動態改變Dialog中IDC_STATIC的文字:
SetDlgItemText(IDC_STATIC,"ABC");
動態改變Dialog中IDC_STATIC文字的顏色:
重載OnCtlColor函數,在要更改顏色的時候向對話框發送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();