捐助郴维网
感谢您对郴维网的支持,你的支持将是郴维网持续发展的动力!
二维码
×
当前位置:郴维网 >API档案 > 正文
31 2017.05

RedrawWindow

点击次数:1280 更新时间:2017-5-31 20:37:42  【打印此页

原文链接 -> 传送门

函数功能:

RedrawWindow 函数用于更新窗口客户区指定的矩形或区域。


API 函数原型:

注释:_In_ 说明该参数是输入的。

BOOL RedrawWindow(
  _In_       HWND hWnd,
  _In_ const RECT *lprcUpdate,
  _In_       HRGN hrgnUpdate,
  _In_       UINT flags
);



参数解析:

参数

含义

hWnd

1. 指向将被重绘的窗口的句柄

2. 如果该参数为 NULL,则更新桌面窗口

lprcUpdate

1. 指向 RECT 结构的指针,该结构包含更新矩形在设备单位上的坐标

2. 如果 hrgnUpdate 参数标志一个区域,则该参数将被忽略

hrgnUpdate

1. 指向更新区域的指针

2. 如果 hrgnUpdate 和 lprcUpdate 参数都为 NULL,则整个客户区将被添加到更新区域

flags

1. 一个或多个重绘标识

2. 该参数可以使窗口变得无效或者有效,控制重绘,以及控制 RedrawWindow 函数影响的窗口

3. 下列的标识用来使窗口无效:

标识(无效)

描述

RDW_ERASE

使得当窗口被重绘时,窗口接受一条 WM_ERASEBKGND 消息。RDW_INVALIDATE 标识必须同时被指定,否则 RDW_ERASE 无效

RDW_FRAME

使得任何与更新区域相交的非客户区域接受一条 WM_NCPAINT 消息。RDW_INVALIDATE 标识必须同时被指定,否则 RDW_FRAME 无效。WM_NCPAINT 消息通常在 RedrawWindow 函数的执行过程中不会被发送,除非指定了 RDW_UPDATENOW 或 RDW_ERASENOW

RDW_INTERNALPAINT

使得一条 WM_PAINT 消息被传递给窗口而不管窗口的任何部分是否有效

RDW_INVALIDATE

使 lprcUpdate 或 hrgnUpdate 参数无效(只有一个可能为非空)。如果都为 NULL,则整个窗口将无效


4. 下列标识用来使窗口有效:

标识(有效)

含义

RDW_NOERASE

取消所有挂起的 WM_ERASEBKGND 消息

RDW_NOFRAME

取消所有挂起的 WM_NCPAINT 消息。该标识必须与 RDW_VALIDATE 同时使用,并且通常与 RDW_NOCHILDREN 一同使用。应该小心使用 RDW_NOFRAME,因为它可能造成重绘的窗口部分区域绘制不正确

RDW_NOINTERNALPAINT

取消所有挂起的内部 WM_PAINT 消息。该标识不会影响从一个非空更新区域产生的 WM_PAINT 消息

RDW_VALIDATE

使 lprcUpdate 或 hrgnUpdate 有效(只有一个可能为非空)。如果都为 NULL,则整个窗口将有效。该标识不会影响内部 WM_PAINT 消息


5. 下列标识控制何时重绘。RedrawWindow 将不会重绘除非指定了这些标识中的某一个:

标识

含义

RDW_ERASENOW

如果有必要,在函数返回之前,会使受影响的窗口(通过 RDW_ALLCHILDREN 和 RDW_NOCHILDREN 标识指定)接收 WM_NCPAINT 和 WM_ERASEBKGND 消息。WM_PAINT 消息会在平常的时间被接受

RDW_UPDATENOW

如果有必要,在函数返回之前,会使受影响的窗口(通过 RDW_ALLCHILDREN 和 RDW_NOCHILDREN 标识指定)接收 WM_NCPAINT,WM_ERASEBKGND 和 WM_PAINT 消息


6. 默认情况下,RedrawWindow 函数影响的窗口取决于是否指定的窗口含有 WS_CLIPCHILDREN 风格。不含有 WS_CLIPCHILDREN 风格的子窗口不会被影响;非 WS_CLIPCHILDREN 窗口将递归的有效或者无效直到出现一个WS_CLIPCHILDREN 窗口。下列的标识控制 RedrawWindow 函数影响的窗口:

标识

描述

RDW_ALLCHILDREN

如果存在子窗口,重绘操作包括子窗口

RDW_NOCHILDREN

如果存在子窗口,重绘操作排除子窗口



返回值:

1. 如果窗口在此前已被禁用,则返回值为非 0;

2. 如果窗口在此前没有被禁用,则返回值为 0。


备注:

当 RedrawWindow 函数用来使桌面窗口的一部分无效,则桌面窗口不会接收 WM_PAINT 消息。应用程序可以使用 RDW_ERASE 标识来产生一条 WM_ERASEBKGND 消息来重绘桌面。


需求:

Minimum supported client

Windows 2000 专业版[桌面应用程序]

Minimum supported server

Windows 2000 服务器版 [桌面应用程序]

Header

Winuser.h(包含于 Windows.h)

Library

User32.lib

DLL

User32.dll


 

提示
郴维网为您提供各类专业服务:
软件开发,电脑配件销售,WIFI路由器销售,上门电脑维修,上门安装系统,系统安装,软、硬件安装,电脑除尘清灰,显示器维修,WIFI安装调试,服务器维护,数据恢复,密码破解,网络布线,网络检修,打印机维修,打印机加碳粉,苹果电脑安装系统,苹果电脑安装双系统,监控安装维护,电脑外包,笔记本电脑维修,餐饮、美容行业软件安装 等。。。。。。
点击次数:1280 更新时间:2017-5-31 20:37:42  【打印此页

上一条:SetLocalTime

下一条:VirtualProtectEx

关键词推荐:郴州电脑城 郴州电脑维修公司 维修电脑公司 郴州软件开发 上门电脑维修 上门安装系统 笔记本电脑维修 郴州打印机维修 打印机加碳粉 电脑安装双系统 苹果电脑双系统 液晶显示器维修 联想笔记本维修 联想笔记本维修电话 戴尔笔记本维修电话 郴州戴尔笔记本维修 戴尔笔记本郴州维修点 华硕笔记本维修点 郴州华硕笔记本维修 郴州笔记本上网维修