對話框中設置靜態文本框字體及顏色

1、添加對話框類聲明中字體和顏色變量

[cpp] view plain copy
  1. public:  
  2.     CFont m_myFont;     // 字體對象  
  3.     COLORREF m_myColor; // 顏色對象  


2、在對話框初始化函數OnInitDialog()中對字體和顏色進行初始化

[cpp] view plain copy
  1. // TODO: 在此添加額外的初始化代碼  
  2.   
  3. m_myFont.CreatePointFont(150, _T("華文彩雲"));  
  4. m_myColor = RGB(255, 0, 255);  


3、爲對話框類添加WM_CTLCOLOR消息響應函數,並在其消息響應函數OnCtlColor()中添加代碼

[cpp] view plain copy
  1. afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);    // 消息響應函數聲明  
[cpp] view plain copy
  1. ON_WM_CTLCOLOR()                            // 消息映射  
[cpp] view plain copy
  1. HBRUSH CXXXDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)        // 消息響應函數實現  
  2. {  
  3.     HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);  
  4.   
  5.     // TODO:  在此更改 DC 的任何屬性  
  6.     if(pWnd->GetDlgCtrlID()==IDC_STATIC_WEEK)  
  7.     {  
  8.         pDC->SelectObject(&m_myFont);    // 設置字體  
  9.         pDC->SetTextColor(m_myColor);    // 設置顏色  
  10.     }  
  11.     // TODO:  如果默認的不是所需畫筆,則返回另一個畫筆  
  12.     return hbr;  
  13. }  


參考:
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章