2024年2月19日发(作者:)
C++对话框背景色的设置方法
---- 方法一:调用CWinApp类的成员函数SetDialogBkColor来实现。
---- 其中函数的第一个参数指定了背景颜色,其次个参数指定了文本颜色。下面的例子是将应用程序对话 框设置为蓝色背景和红色文本,步骤如下:
---- ① 新建一个基于Dialog的MFC AppWizard应用程序ExampleDlg。
---- ② 在CExampleDlgApp ::InitInstance()中添加如下代码:
BOOL CExampleDlgApp: : InitInstance ( )
{
…
CExampleDlgDlg dlg;
m_pMainWnd =
//先于DoModal()调用,将对话框设置为蓝色背景、红色文本
SetDialogBkColor(RGB(0,0,255),RGB(255,0,0));
int nResponse = l();
…
}
---- 编译并运行,此时对话框的背风光和文本色已发生了转变。值
得留意的是:在调用DoModal()之前必需 先调用SetDialogBkColor,且此方法是将转变应用程序中全部的对话框颜色,并不能针对某一个指定的对 话框。
---- 方法二:重载OnPaint(),即WM_PAINT消息。有关代码如下(以上例工程为准):
void CExampleDlgDlg::OnPaint()
{
if (IsIconic())
…
else
{
CRect rect;
CPaintDC dc(this);
GetClientRect(rect);
lidRect(rect,RGB(0,255,0)); //设置为绿色背景
CDialog::OnPaint();
}


发布评论