求VS2012 MFC对话框改黑色背景、白色字体的高效方法,我不需要实时修改颜色,程序运行过程一直都是黑色背景、白色色字体就ok了。不想用OnCtlColor,因为代码里的静态文本需要每500ms刷新一次,用它会导致每次刷新都要进入OnCtlColor。
在VC6很简单,一行SetDialogBkColor(RGB(50,50,50),RGB(255,255,255));就实现了,而且静态文本也会跟着黑背景、白色字体,很简单、完美、高效:
CRect rect;
CPaintDC dc(this);
GetClientRect(rect);
dc.FillSolidRect(rect,RGB(50,50,50));
对话框是改过来了,但是文本框不会跟着变:
OnInitDialog 中
this->SetBackgroundColor(COLORREF(RGB(50, 50, 50)), TRUE));