WM_NCPAINT
当窗体框架(非客户区)要被重画时,WM_NCPAINT消息产生
窗体可用一个WindowProc函数接收这个消息
LRESULT CALLBACK WindowProc( HWND hwnd, // 窗体句柄
UINT uMsg, // WM_NCPAINT
WPARAM wParam, //处理窗体更新区域 (HRGN)
LPARAM lParam // 不用
);
参数
wParam
处理窗体更新区域,对窗体来说缺省更新的部分区域是框架。当wParam设为1时,整个窗体将得到更新。
返回值
如果应用这个消息就返回零
附言:
DefWindowProc函数画窗体框架,可以拦截这条WM_NCPAINT消息
并画自己特有风格的窗体框架。剪切区域总是直角矩形,即使窗体的框架
被改变。
wParam可以传给GetDCEx函数。看下面例子
case WM_NCPAINT: {
HDC hdc;
hdc = GetDCEx(hwnd, (HRGN)wParam, DCX_WINDOW|DCX_INTERSECTRGN);
// 进入设备场景画
ReleaseDC(hwnd, hdc);
}
,
需求
Windows NT/2000/XP
Windows 95/98/Me