LoadCursor,LoadIcon如果获取系统资源,第一个参数传空IDC_开头表光标标识符,IDI_开头表图标开头
CS_HREDRAW和CS_VREDRAW表水平和垂直刷新,当窗口改变大小的时候,会去重绘窗口
CW_USEDDEFAULT表示使用默认的窗口位置和大小
UpdateWindow立即发送WM_PAINT消除,ReDrawWindow表先调用InvalidRect再调用UpdateWindow
在WM_PAINT消除处理的时候,必须调用BeginPaint和EndPaint,否则系统会因为Update Region不为空,而一直调用WM_PAINT,造
成死循环的局面
GetMessage在收到WM_QUIT时,会返回0,所以While循环会终止
在使用PeekMessage时,我们要自己判断返回的消除时否为WM_QUIT
TranslateMessage表示转化消息,如WM_KEYDOWN,WM_KEYUP,我们需要知道按下键的ASCII码,而WM_KEYDOWN和WM_KEYUP是不包含ASCII码的,所以此时系统会生成一个WM_CHAR消息给我们需要的信息
在调用DestroyWindow的时候,窗口已经销毁,所以如果在用户想要关闭窗口时,如果应用程序要弹出MessageBox,要在DestroyWindow之前加,而不应在之后加,否则窗口应已经关闭了,只是应用程序还没有退出消息循环而己.
CS_HREDRAW和CS_VREDRAW表水平和垂直刷新,当窗口改变大小的时候,会去重绘窗口
CW_USEDDEFAULT表示使用默认的窗口位置和大小
UpdateWindow立即发送WM_PAINT消除,ReDrawWindow表先调用InvalidRect再调用UpdateWindow
在WM_PAINT消除处理的时候,必须调用BeginPaint和EndPaint,否则系统会因为Update Region不为空,而一直调用WM_PAINT,造
成死循环的局面
GetMessage在收到WM_QUIT时,会返回0,所以While循环会终止
在使用PeekMessage时,我们要自己判断返回的消除时否为WM_QUIT
TranslateMessage表示转化消息,如WM_KEYDOWN,WM_KEYUP,我们需要知道按下键的ASCII码,而WM_KEYDOWN和WM_KEYUP是不包含ASCII码的,所以此时系统会生成一个WM_CHAR消息给我们需要的信息
在调用DestroyWindow的时候,窗口已经销毁,所以如果在用户想要关闭窗口时,如果应用程序要弹出MessageBox,要在DestroyWindow之前加,而不应在之后加,否则窗口应已经关闭了,只是应用程序还没有退出消息循环而己.
本文介绍了Windows编程中的一些关键概念和技术细节,包括如何通过LoadCursor和LoadIcon加载系统资源、理解CS_HREDRAW和CS_VREDRAW的作用、使用CW_USEDEFAULT设置默认窗口属性、掌握UpdateWindow和RedrawWindow的工作原理、避免在WM_PAINT处理中出现死循环的方法、理解GetMessage和PeekMessage的行为差异、TranslateMessage如何处理键盘输入以及DestroyWindow和MessageBox使用的注意事项。

318

被折叠的 条评论
为什么被折叠?



