void Base::RegisterWnd(HINSTANCE hInstance)
{
ZeroMemory(&WndCls, sizeof(WNDCLASSEX));
WndCls.cbSize = sizeof(WNDCLASSEX);
WndCls.hbrBackground = (HBRUSH)COLOR_WINDOW;
WndCls.hCursor = LoadCursor(NULL, IDC_ARROW);
WndCls.hIcon = LoadIcon(hInstance, NULL);
WndCls.hIconSm = LoadIcon(hInstance, NULL);
WndCls.hInstance = hInstance;
WndCls.lpfnWndProc = CallWindowProc; << What should i put here
}我试图使用面向对象的方法注册窗口类。我不知道我应该在cpp类中为lpfnWndProc放什么。对于头文件,如下所示
#pragma once
#ifndef BASE_H
#define BASE_H
#include <Windows.h>
#include <windowsx.h>
class Base
{
HWND hWnd;
WNDCLASSEX WndCls;
public:
Base();
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
void RegisterWnd(HINSTANCE hInstance);
void CreateWnd();
void ShowWnd();
~Base();
};
#endif如果我做错了什么,请纠正我。还在学习。对不起,谢谢:)
发布于 2014-10-30 09:42:01
在任何类之外声明以下内容:
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);并在其他地方定义它
WndCls.lpfnWndProc = WndProc; // address of your window procedureWndProc应该有一个开关大小写,以处理需要在特定窗口类函数(C函数或类静态方法)中处理的事件或消息。
https://stackoverflow.com/questions/26649480
复制相似问题