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选件类

层次结构图

COleControl::ReleaseDC