LRESULT CMainDlg::OnOK(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
{
CClientDC dc( m_hWnd );
RECT rect;
::GetClientRect( m_hWnd, &rect );
dc.DrawTextEx(_T( "I'm Coming"), 10, &rect,DT_CENTER | DT_SINGLELINE | DT_VCENTER);
return 0;
}
主要是为了学习 DC的设置方式,其实很多设置还不太明白,慢慢来吧,呵呵。
CString s = _T("Test");
RECT cRect;
GetClientRect( &cRect );
CBitmap m_bmp;
m_bmp.LoadBitmap(IDB_CHART);
CDCHandle dc;
dc.Attach(GetDC());
dc.SaveDC();
CDC dcMem;
dcMem.CreateCompatibleDC ( dc );
dcMem.SaveDC();
dcMem.SelectBitmap(m_bmp);
BITMAP bt;
m_bmp.GetBitmap(&bt);
dc.BitBlt(10,10,bt.bmWidth,bt.bmHeight,dcMem, 0, 0, SRCCOPY );
dcMem.RestoreDC(-1);
dc.DrawText(s,4,&cRect,DT_CENTER | DT_SINGLELINE | DT_VCENTER);
dc.RestoreDC(-1);
本文详细介绍了如何使用DC(设备上下文)进行文本绘制,包括设置文本样式、使用字符串和位图,以及如何实现文本的居中和单行显示。通过实例演示了在窗口上绘制文本和位图的基本步骤,旨在帮助开发者理解和掌握DC操作。
791

被折叠的 条评论
为什么被折叠?



