createCompatibleDC 函数 (wingdi.h)

CreateCompatibleDC 函数创建与指定设备兼容的内存设备上下文 (DC) 。

语法

HDC CreateCompatibleDC(
  [in] HDC hdc
);

参数

[in] hdc

现有 DC 的句柄。 如果此句柄为 NULL,则该函数将创建与应用程序的当前屏幕兼容的内存 DC。

返回值

如果函数成功,则返回值是内存 DC 的句柄。

如果函数失败,则返回值为 NULL。

注解

内存 DC 仅存在于内存中。 创建内存 DC 时,其显示表面正好是一个单色像素宽和一个单色像素高。 在应用程序可以使用内存 DC 进行绘制操作之前,它必须在 DC 中选择一个宽度和高度正确的位图。 若要选择 DC 中的位图,请使用 CreateCompatibleBitmap 函数,指定所需的高度、宽度和颜色组织。

创建内存 DC 时,所有属性都设置为普通默认值。 内存 DC 可用作普通 DC。 可以设置属性;获取其属性的当前设置;并选择笔、画笔和区域。

CreateCompatibleDC 函数只能用于支持光栅操作的设备。 应用程序可以通过调用 GetDeviceCaps 函数来确定设备是否支持这些操作。

如果不再需要内存 DC,请调用 DeleteDC 函数。 建议调用 DeleteDC 来删除 DC。 但是,也可以使用 HDC 调用 DeleteObject 来删除 DC。

如果 hdcNULL,则调用 CreateCompatibleDC 的线程将拥有创建的 HDC。 当此线程被销毁时,HDC 不再有效。 因此,如果创建 HDC 并将其传递给另一个线程,然后退出第一个线程,则第二个线程将无法使用 HDC。

Icm: 如果为图像颜色管理 (ICM) 启用了传递给此函数的 DC,则由该函数创建的 DC 已启用 ICM。 源和目标颜色空间在 DC 中指定。

示例

有关示例,请参阅 捕获图像

要求

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

另请参阅

CreateCompatibleBitmap

DeleteDC

设备上下文函数

设备上下文概述

GetDeviceCaps