VB声明 |
||
Declare Function RedrawWindow Lib "user32" Alias "RedrawWindow" (ByVal hwnd As Long, lprcUpdate As RECT, ByVal hrgnUpdate As Long, ByVal fuRedraw As Long) As Long |
||
说明 |
||
根据fuRedraw旗标的设置,重画全部或部分窗口 |
||
返回值 |
||
Long,非零表示成功,零表示失败。会设置GetLastError |
||
参数表 |
||
参数 |
类型及说明 |
|
hwnd |
Long,要重画的窗口的句柄。零表示更新桌面窗口 |
|
lprcUpdate |
RECT,窗口中需要重画的一个矩形区域 |
|
hrgnUpdate |
Long,一个“区”的句柄,这个区描述了要重画的窗口区域。“区”:Region |
|
fuRedraw |
Long,规定具体重画操作的旗标。下列常数可组合使用,从而进行复杂的重画行动 |
|
RDW_ERASE |
重画前,先清除重画区域的背景。也必须指定RDW_INVALIDATE |
|
RDW_FRAME |
如非客户区包含在重画区域中,则对非客户区进行更新。也必须指定RDW_INVALIDATE |
|
RDW_INTERNALPAINT |
即使窗口并非无效,也向其投递一条WM_PAINT消息 |
|
RDW_INVALIDATE |
禁用(屏蔽)重画区域 |
|
RDW_NOERASE |
禁止删除重画区域的背景 |
|
RDW_NOFRAME |
禁止非客户区域重画(如果它是重画区域的一部分)。也必须指定RDW_VALIDATE |
|
RDW_NOINTERNALPAINT |
禁止内部生成或由这个函数生成的任何待决WM_PAINT消息。针对无效区域,仍会生成WM_PAINT消息 |
|
RDW_VALIDATE |
检验重画区域 |
|
RDW_ERASENOW |
立即删除指定的重画区域 |
|
RDW_UPDATENOW |
立即更新指定的重画区域 |
|
RDW_ALLCHILDREN |
重画操作包括子窗口(前提是它们存在于重画区域) |
|
RDW_NOCHILDREN |
重画操作排除子窗口(前提是它们存在于重画区域) |
|
注解 |
||
如针对桌面窗口应用这个函数,则应用程序必须用RDW_ERASE旗标重画桌面 |