在類別,右鍵,選擇屬性
在屬性視窗 的訊息 WM_CTLCOLOR 加入消息函數
OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
在函數中加入對應程式碼:
if (pWnd->GetDlgCtrlID()==IDC_STATIC_S_TEXT)
{
pDC->SetTextColor(m_textColor); //設置字體顏色
pDC->SetBkMode(TRANSPARENT); //設置字體背景為透明
// TODO: Return a different brush if the default is not desired
return (HBRUSH)::GetStockObject(WHITE_BRUSH); // 設置背景色
}
else
return hbr;
其中,m_textColor是全域變數,要動態更改的方法為,在Button Click時加入:
SetDlgItemText(IDC_STATIC_S_TEXT,"OPENED");設定全域變數m_textColor新的顏色, 然後呼叫RedrawWindow()或是InvalidateRect(NULL)重繪。
m_textColor = RGB(255, 0, 0) ;
GetDlgItem(IDC_STATIC_S_TEXT)->RedrawWindow();
//GetDlgItem(IDC_STATIC_S_TEXT)->InvalidateRect(NULL);
沒有留言:
張貼留言