// WM_PAINTメッセージハンドラ
void OnPaint(HDC /*hDC*/){
CPaintDC dc(m_hWnd);
CEnhMetaFile emf(::GetEnhMetaFile(_T("test.emf")));
CRect rect;
GetClientRect(rect);
// 拡張メタファイルを描画
dc.PlayMetaFile(emf, rect);
}
// WM_CREATEメッセージハンドラ
LRESULT OnCreate(LPCREATESTRUCT lpcs){
// 拡張メタファイルを作成
CEnhMetaFileDC dc(NULL, _T("test.emf"), NULL, NULL);
// 青い格子ハッチのブラシを作成し、選択
CBrush brush;
brush.CreateHatchBrush(HS_CROSS, RGB(0, 0, 255));
HBRUSH hOldBrush = dc.SelectBrush(brush);
// クライアント矩形を取得し、円を描画
CRect rect;
GetClientRect(rect);
dc.Ellipse(rect);
// 元のブラシを選択
dc.SelectBrush(hOldBrush);
return 0;
}
|