给对话框类添加一个BOOL型的静态变量.
public:
static BOOL IsDraw;
==============
BOOL CMFCDlg::IsDraw = FALSE;
==============
void CMFCDlg::OnBt()
{
if(!IsDraw)
IsDraw = TRUE;
else
IsDraw = FALSE;
CMFCDlg::Invalidate();
}
=========
HBRUSH CMFCDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if(IsDraw){
if(pWnd->GetDlgCtrlID() == ID_EDIT_TEXT){
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(RGB(255,0,0));
pDC->SetBkColor(RGB(192, 255, 192));
HBRUSH hBr = CreateSolidBrush(RGB(0, 0, 0)); // 文本框背景色
return hBr;
}
}
// TODO: Return a different brush if the default is not desired
return hbr;
}
public:
static BOOL IsDraw;
==============
BOOL CMFCDlg::IsDraw = FALSE;
==============
void CMFCDlg::OnBt()
{
if(!IsDraw)
IsDraw = TRUE;
else
IsDraw = FALSE;
CMFCDlg::Invalidate();
}
=========
HBRUSH CMFCDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if(IsDraw){
if(pWnd->GetDlgCtrlID() == ID_EDIT_TEXT){
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(RGB(255,0,0));
pDC->SetBkColor(RGB(192, 255, 192));
HBRUSH hBr = CreateSolidBrush(RGB(0, 0, 0)); // 文本框背景色
return hBr;
}
}
// TODO: Return a different brush if the default is not desired
return hbr;
}