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