如何在MFC对话框中的静态区域中绘制图像?

时间:2014-10-28 10:03:27

标签: c++ mfc

在MFC对话框中,我有一个静态区域并分配了一个id:IDC_STATIC。如何将此IDC_STATIC ID与处理程序(HWND)相关联,以便我的图像将在静态文本区域内绘制?

HWND   g_hWnd3      = NULL;
HDC    g_hDC3       = NULL;

g_hDC3 = ::GetDC( g_hWnd3 );

如何将静态文本ID作为GetDC()参数传递?

1 个答案:

答案 0 :(得分:1)

您应该考虑从CStatic派生自己的班级。这种方法的优点是您可以从一个自包含的类控制对控件的所有渲染。特别是,如果使用 SS_OWNERDRAW 样式定义静态控件,则可以在CStatic::DrawItem中处理其呈现。当调用DrawItem时,您将收到一个指向DrawItemStruct的指针,该指针嵌入其中,是控件DC的句柄,可用于呈现到控件中。