getRandomRgn 函数 (wingdi.h)

GetRandomRgn 函数将指定设备上下文的系统剪辑区域复制到特定区域。

语法

int GetRandomRgn(
  [in] HDC  hdc,
  [in] HRGN hrgn,
  [in] INT  i
);

参数

[in] hdc

设备上下文的句柄。

[in] hrgn

区域的句柄。 在调用 函数之前,这会标识现有区域。 函数返回后,这将标识当前系统区域的副本。 由 hrgn 标识的旧区域将被覆盖。

[in] i

此参数必须为 SYSRGN。

返回值

如果函数成功,则返回值为 1。 如果函数失败,返回值为 -1。 如果要检索的区域为 NULL,则返回值为 0。 如果函数失败或要检索的区域为 NULL,则不初始化 hrgn

注解

使用 SYSRGN 标志时,请注意,由于窗口移动,系统剪辑区域可能不是最新的。 尽管如此,在WM_PAINT处理期间,在 BeginPaint-EndPaint 块中检索和使用系统剪辑区域是安全的。 在这种情况下,系统区域是更新区域与窗口的当前可见区域的交集。 在 GetRandomRgn 返回后和 EndPaint 之前的任何窗口移动都将导致新的WM_PAINT消息。 任何其他使用 SYSRGN 标志都可能导致应用程序中出现绘制错误。

返回的区域位于屏幕坐标中。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 wingdi.h (包括 Windows.h)
Library Gdi32.lib
DLL Gdi32.dll

另请参阅

BeginPaint

剪裁函数

剪辑概述

EndPaint

ExtSelectClipRgn

GetClipBox

GetClipRgn

GetRegionData

OffsetRgn