函数参考


_WinAPI_RedrawWindow

更新指定矩形或窗口客户区域

#Include <WinAPI.au3>
_WinAPI_RedrawWindow($hWnd [, $tRect = 0 [, $hRegion = 0 [, $iFlags = 5]]])

参数

$hWnd 窗口句柄
$tRect [可选参数] 包含更新矩形坐标的 $tagRECT 结构
如果 $hRegion 参数标识为区域,此参数被忽略.
$hRegion [可选参数] 标识更新区域.如果 $hRegion 与 @tRect参数为 0,
整个客户区被添加到更新区域.
$iFlags [可选参数] 指定重绘标志.此参数可以是使窗口无效或有效的组合标志,
以便控制重绘,并控制受影响的窗口:
$RDW_ERASE - 窗口重绘时,接收 WM_ERASEBKGND 消息
$RDW_FRAME - 使得与更新区域相交的窗口非客户区任意部分接收 WM_NCPAINT 消息.
$RDW_INTERNALPAINT - 若任何窗口的部分无效,将导致 WM_PAINT 消息被发布到窗口.
$RDW_INVALIDATE - DllStructGetData($tRect 或 $hRegion, "") 无效; 如果两个都为 0, 则整个窗口失效.
$RDW_NOERASE - 取消任何挂起的 $WM_ERASEBKGND 消息
$RDW_NOFRAME - 取消任何挂起的 $WM_NCPAINT 消息
$RDW_NOINTERNALPAINT - 取消任何挂起的内部 $WM_PAINT 消息
$RDW_VALIDATE - $tRect 或 $hRegion 有效
$RDW_ERASENOW - 如有必要, 在函数返回之前,
使受影响的窗口接收 $WM_NCPAINT and $WM_ERASEBKGND 消息
$RDW_UPDATENOW - 如有必要, 在函数返回之前,
使受影响的窗口接收 $WM_NCPAINT, $WM_ERASEBKGND, 与 $WM_PAINT 消息.
$RDW_ALLCHILDREN - 重绘操作包括子窗口
$RDW_NOCHILDREN - 重绘操作排除子窗口

返回值

成功: 返回 True
失败: 返回 False

注意/说明

 当 RedrawWindow 用于无效的桌面窗口的一部分, 桌面窗口不会收到 $WM_PAINT 消息.
 要重新绘制桌面, 应用程序使用 $RDW_ERASE 标志生成 $WM_ERASEBKGND 消息.
 需要 WindowsConstants.au3 预先定义的常量

相关

$tagRECT

详情参考

在MSDN中搜索