思路1)拦截 WM_NCHITTEST2)判断可拖动区域3)return
HTCAPTION;引申可以拦截WM_NCHITTEST消息之后的 WM_NCLBUTTONDOWN消息,进行进一步控制。但注意
WM_NCLBUTTONUP无法拦截到,除非用HOOK
分类:
其他好文 时间:
2014-04-29 10:43:46
阅读次数:
263
InvalidateRectrect是你指定要刷新的区域,此区域外的客户区域不被重绘,这样防止客户区域的一个局部的改动,而导致整个客户区域重绘而导致闪烁如果最后的参数为TRUE,则还向窗体发送WM_ERASEBKGND消息,使背景重绘,当然在客户区域重绘之前。UpdateWindow在发送之前通过G...
分类:
其他好文 时间:
2014-04-29 10:15:46
阅读次数:
289
疑问为什么GetMessage的第二个参数制定为hwnd后,应用程序无法退出?解释MSDN中指出:当第二个参数为NULL时,GetMessage取得那些属于调用线程的窗口的消息和通过PostThreadMessage函数投递到调用线程的线程消息。GetMessage需要检索到WM_QUIT返回一个F...
分类:
其他好文 时间:
2014-04-29 10:12:47
阅读次数:
673
一个异步模型的聊天程序服务器端:自定义消息(放在StdAfx.h文件里面即可)#define
WM_SOCKET WM_USER + 1然后注册消(在VS2012里面可以自动完成注册和映射)afx_msg LRESULT OnSocket(WPARAM
wParam, LPARAM lParam);...
分类:
其他好文 时间:
2014-04-28 13:34:49
阅读次数:
551
窗口创建1. 自定义窗口类别WNDCLASS2. 注册窗口类RegisterClass3.
创建窗口 CreateWindow/CreateWindowEx WM_CREATE4. 显示窗口ShowWindowWM_SIZE &
WM_SHOWWINDOW5. 更新窗口UpdateWindow(使整...
分类:
其他好文 时间:
2014-04-27 21:39:59
阅读次数:
521
方法一GetWindowLong(hwnd,
GWL_HINSTANCE);获取该窗口句柄做用的实例句柄?方法二WM_CREATE? lpcs = (LPCREATESTRUCT) lParam;
lpcs->hInstance;
分类:
其他好文 时间:
2014-04-27 21:33:22
阅读次数:
428
调整CreateWindow函数里窗口样式参数效果一:无标题栏可改变大小WS_POPUPWINDOW | WS_SIZEBOXorWS_POPUPWINDOW
| WS_THICKFRAME注:拦截WM_GETMINMAXINFO,禁止改变大小lpMinMaxInfo->ptMinTrackSize...
分类:
其他好文 时间:
2014-04-27 21:32:42
阅读次数:
597
思路1)#define WINVER 0X500 // 放在所有头文件前 #include
2) WM_CREATE AnimateWindow(hwnd, 1000, AW_ACTIVATE|AW_BLEND);
InvalidateRect(hwnd, NULL, TRUE); UpdateWi...
分类:
其他好文 时间:
2014-04-27 21:32:09
阅读次数:
546