COleControl::GetDC

为无窗口的对象获取提供从其容器的屏幕(或兼容)的设备上下文。

CDC* GetDC( 
   LPCRECT lprcRect = NULL,
   DWORD dwFlags = OLEDC_PAINTBKGND  
);

参数

  • lprcRect
    为无窗口控件若要绘制矩形的指针,在控件的工作区坐标。 NULL 意味着完全对象的区域。

  • dwFlags
    设备上下文的绘图特性。 选择是:

    • OLEDC_NODRAW 指示对象不使用设备上下文执行任何绘图,但仅有关显示设备的信息。 容器应当通过窗口的DC,而无需进一步处理。

    • OLEDC_PAINTBKGND 在返回DC之前请求容器绘制背景。 如果它请求DC重绘与透明背景,区域的对象应使用此标志。

    • OLEDC_OFFSCREEN 通知容器对象需要呈现到随后应复制到屏幕的离屏位图。 它将执行时的对象应使用此标志,当绘制操作生成大量闪烁。 容器是自由接受此请求。 但是,因此,如果此未设置任何标志,容器必须传递一屏幕上的DC。 这允许对象执行直接操作(如屏幕显示选择(通过 XOR 操作)。

返回值

有关演示设备上下文的指针容器 CWnd 工作区的,如果成功;否则,返回值是 NULL。 显示设备上下文可用于对绘制的后续GDI功能在容器窗口的工作区。

备注

必须调用 ReleaseDC 成员函数在绘制后释放上下文。 在调用 GetDC时,他们希望介绍其工作区坐标的对象通过矩形。 GetDC 将这些为容器工作区的坐标。 对象大于自己的工作区矩形不应该请求所需绘制的矩形,范围的可检索与 GetClientRect。 这会阻止对象意外绘制它们不应当的位置。

要求

Header: afxctl.h

请参见

参考

COleControl Class

层次结构图

COleControl::ReleaseDC