首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WndProc分配问题

WndProc分配问题
EN

Stack Overflow用户
提问于 2011-12-12 12:15:34
回答 1查看 2.7K关注 0票数 2

我正在尝试创建一个自定义的GLWindow类,其中包含我对OpenGL窗口的所有设置。但是,我还希望在我的GLWindow类中包含发送到窗口的消息的WndProc回调函数。

代码语言:javascript
复制
GLWindow.h:

class GLWindow
{
    private:
        HWND hWnd;
        HDC hDC;
        HGLRC hRC;
    public:
        GLWindow();

        LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);

        bool Create();

        ~GLWindow();
}

GLWindow.cpp:

GLWindow::GLWindow()
{

}

bool GLWindow::Create(int width, int height, char * title, bool fullscreen)
{
    WNDCLASSEX window;

    HINSTANCE hInstance;

    hInstance = GetModuleHandle(NULL);
    window.cbSize = sizeof(WNDCLASSEX);
    window.cbClsExtra = 0;
    window.cbWndExtra = 0;
    window.hbrBackground = NULL;
    window.hIcon = LoadIcon(NULL, IDI_APPLICATION);
    window.hIconSm = LoadIcon(NULL, IDI_WINLOGO);
    window.hCursor = LoadCursor(NULL, IDC_ARROW);
    window.hInstance = hInstance;
    window.lpfnWndProc = GLWindow::WndProc; // ERROR
}

GLWindow::~GLWindow()
{

}

错误是"LRESULT (WNDPROC GLWindow::*)(::*)(,__stdcall wParam,lParam)“类型的值不能分配给”WNDPROC“类型的实体。

我想不通了

当WndProc与WinMain函数共享相同的.cpp文件时,我让它工作,但似乎作用域把它抛到了一边。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-12-12 12:17:12

它应该是一个static或全局函数。类成员函数期望接收一个名为this的附加隐藏参数,因此签名不匹配。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8469860

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档