作者:龚建伟 啸峰工作室
CLabel类可以有选择地改变 Static 静态文本颜色、背景,或将静态文本设置为超链接,但如果对话框全部改成其它统一的背景色和文字颜色,在VC中则只需一条语句。
首先下载我做的示例源程序bgtextcolor.ziip:下载(VC6.0,WIN9X/2000) ,在压缩包内我还放了个WORD文档的256颜色表,你选择颜色时会非常方便的。
下面是详细的编程过程:
1. 新建项目:在VC6中用MFC新建一个基于对话框的BgcolorDemo项目,接受所有缺省选项即可;
2.写入这条语句就成了:在 BgColorDemo.cpp文件中找到 BOOL CBgColorDemoApp::InitInstance()函数,在如下位置加入SetDialogBkColor设置。
BOOL CBgColorDemoApp::InitInstance()
{
AfxEnableControlContainer();
// Standard initialization
// If you are not using these features and wish to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.
#ifdef _AFXDLL
Enable3dControls(); // Call this when using MFC in a shared DLL
#else
Enable3dControlsStatic(); // Call this when linking to MFC statically
#endif
CBgColorDemoDlg dlg;
m_pMainWnd = &dlg;
//在这里加入背景颜色的设置,就一条语句,多简单,
//前一个 RGB设置背景色,第二个RGB设置字体颜色
SetDialogBkColor(RGB(000,204,255), RGB(255, 0,0));
int nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: Place code here to handle when the dialog is
// dismissed with OK
}
else if (nResponse == IDCANCEL)
{
// TODO: Place code here to handle when the dialog is
// dismissed with Cancel
}
// Since the dialog has been closed, return FALSE so that we exit the
// application, rather than start the application's message pump.
return FALSE;
}
大功告成,Build -> Run 吧,成了吗?