Windows API一日一练(8)UpdateWindow函数

Post date: 2012/3/27 上午 07:15:17

分类: Direct3D2007-07-16 08:49 3116人阅读 评论(0) 收藏 举报

UpdateWindow函数是更新窗口的客户区,主要通过发送WM_PAINT消息来实现的。

函数声明如下:

WINUSERAPI

BOOL

WINAPI

UpdateWindow(

__in HWND hWnd);

hWnd是要更新窗口客户区的窗口句柄。

调用这个函数的实例如下:

#001 BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)

#002 {

#003 HWND hWnd;

#004

#005 hInst = hInstance; // 保存实例句柄到全局变量里。

#006

#007 hWnd = CreateWindow(szWindowClass,

#008 szTitle,

#009 WS_OVERLAPPEDWINDOW,

#010 CW_USEDEFAULT,

#011 0,

#012 CW_USEDEFAULT,

#013 0,

#014 NULL,

#015 NULL,

#016 hInstance,

#017 NULL);

#018

#019 if (!hWnd)

#020 {

#021 return FALSE;

#022 }

#023

#024 ShowWindow(hWnd, nCmdShow);

#025 UpdateWindow(hWnd);

#026

#027 //

#028 //蔡军生 2007/07/14

#029 //显示窗口测试。

#030 MessageBox(NULL,_T("最大化"),_T("测试"),MB_OK);

#031

#032 //显示窗口为最大化。

#033 ShowWindow(hWnd, SW_SHOWMAXIMIZED);

#034

#035

#036 MessageBox(NULL,_T("原来位置"),_T("测试"),MB_OK);

#037

#038 //显示窗口为原来位置。

#039 ShowWindow(hWnd, SW_SHOWNORMAL);

#040

#041

#042 return TRUE;

#043 }

第25行就是调用UpdateWindow函数来更新窗口的客户区。

一般创建窗口之后都需要调用UpdateWindow函数来更新窗口客户区的显示,否则是乱糟糟。