vc中消息怎样进入WndProc函数的,是在消息派发后吗?还有Winmain和WndProc是什么关系?初学者
2个回答
展开全部
Winmain是整个程序的入口函数!相当于你初学编程时总写的main()函数。而WndProc是窗口过程函数。是用来对窗口消息进行响应的!你可以在Winmain中调用WndProc对消息进行响应!
至于消息是怎么进入WndProc函数。首先窗口程序的实现应该包含必要的四个部分:定义窗口类,注册窗口类,创建窗口,最后是消息循环。在消息循环中包含了两个函数,一个是翻译消息,另一个就是发送消息。就是这第二个函数把消息发给了WndProc函数,然后由WndProc函数对不同的消息进行消息响应!
我解释的应该很明白了!还有不懂的可以追问!
至于消息是怎么进入WndProc函数。首先窗口程序的实现应该包含必要的四个部分:定义窗口类,注册窗口类,创建窗口,最后是消息循环。在消息循环中包含了两个函数,一个是翻译消息,另一个就是发送消息。就是这第二个函数把消息发给了WndProc函数,然后由WndProc函数对不同的消息进行消息响应!
我解释的应该很明白了!还有不懂的可以追问!
追问
还有个问题,在GetMessage后的switch中什么情况系的case是WM_PAINT什么时候是WM_COMMOND及WM_TIMER,这些消息的顺序是怎样的,这时候键盘还没输入任何命令,case是该先switch该先处理哪个??????、、
展开全部
定于窗口的属性的时候有个窗口函数指针赋值了这个;
结构WNDCLASS包含一个窗口类的全部信息,也是Windows编程中使用的基本数据结构之一,应用程序通过定义一个窗口类确定窗口的属性,定义如下:
typedef struct _WNDCLASS {//RegisterClass( CONST WNDCLASS *lpWndClass );必要结构体
UINT style;
WNDPROC lpfnWndProc;//这个说明了窗口函数
int cbClsExtra;
int cbWndExtra;
HINSTANCE hInstance;
HICON hIcon;
HCURSOR hCursor;
HBRUSH hbrBackground;
LPCTSTR lpszMenuName;
LPCTSTR lpszClassName;
} WNDCLASS, *PWNDCLAS
Winmain 是窗口的入口函数;
Wndproc来执行消息处理;
结构WNDCLASS包含一个窗口类的全部信息,也是Windows编程中使用的基本数据结构之一,应用程序通过定义一个窗口类确定窗口的属性,定义如下:
typedef struct _WNDCLASS {//RegisterClass( CONST WNDCLASS *lpWndClass );必要结构体
UINT style;
WNDPROC lpfnWndProc;//这个说明了窗口函数
int cbClsExtra;
int cbWndExtra;
HINSTANCE hInstance;
HICON hIcon;
HCURSOR hCursor;
HBRUSH hbrBackground;
LPCTSTR lpszMenuName;
LPCTSTR lpszClassName;
} WNDCLASS, *PWNDCLAS
Winmain 是窗口的入口函数;
Wndproc来执行消息处理;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询