win32 CreateCompatibleDC

CreateCompatibleDC
该函数创建一个兼容指定设备的内存device context(DC)

HDC CreateCompatibleDC(
  HDC hdc
)

参数:

hdc
指向一个存在的DC的句柄。如果参数为NULL,该函数将会创建一个兼容应用当前视图的内存DC。

返回值

如果失败,返回NULL
如果成功,返回值为指向内存DC的句柄。

备注

内存DC只存在于内存中。
当内存DC创建之后,它的显示为一个单色像素宽和一个单色像素高。
在应用使用内存DC来进行绘画操作之前,必须选择一个有正确宽度和高度的bitmap到该内存DC中去。
To select a bitmap into a DC,使用CreateCompatibleBitmap函数,指定高度,宽度,和需要的颜色组织。

当内存DC创建之后,所有的属性设置为正常的默认值。
内存DC可以用作普通的DC。可以设置属性,获得当前属性的设置,选择pens,brushes和 regions。

CreateCompatibleDC 函数,只能用在支持raster operations 光栅操作的设备上。
应用可以通过调用GetDeviceCaps 函数,来确定一个设备是否支持这个操作。
当你不再需要内存DC的时候,调用DeleteDC函数。
我们推荐你调用DeleteDC来删除DC。你也可以使用DeleteObject 参数为 HDC,去删除这个DC

调用CreateCompatibleDC的线程,对创建的HDC,拥有所有权,当这个线程销毁的时候,
HDC也不再存在的了。所以,如果你创建HDC,并且将它发送给其他的线程,然后退出第一个线程。
那么第二个线程也不能使用HDC了。

猜你喜欢

转载自blog.csdn.net/wowocpp/article/details/80816912