如何改變Dialog中字體顏色?動(dòng)態(tài)改變Dialog中IDC_STATIC的文字:SetDlgItemText(IDC_STATIC,"ABC"); 動(dòng)態(tài)改變Dialog中IDC_STATIC文字的顏色: 重載OnCtlColor函數(shù),在要更改顏色的時(shí)候向?qū)υ捒虬l(fā)送WM_CTLCOLOR就行了。 1.在對話框的類中加入成員: CBrush m_brush; COLORREF m_color; 2.在OnInitDialog()中,加入 m_brush.CreateSolidBrush(RGB(255,255,255)); //此處設(shè)置的RGB值可以改變控件的背景色。 m_color=RGB(0,0,0) //此處設(shè)置控件的文字初始顏色。 3.響應(yīng)WM_ONCTLCOLOR消息,重載OnCtlColor()函數(shù),加入: if(nCtlColor== CTLCOLOR_STATIC){ pDC->SetBkMode(TRANSPARENT); pDC->SetTextColor(m_color); return (HBRUSH)m_brush.GetSafeHandle(); } 4.需要改變顏色時(shí) m_color=RGB(128,0,255);//此處改變字體的顏色 CStatic* m_pStatic1=(CStatic*)GetDlgItem(IDC_STATIC1); m_pStatic1->RedrawWindow(); |
|