您的位置:首页 > 其它

VC/MFC如何设置对话框背景颜色

2015-01-27 15:33 477 查看
方法一:在OnInitDialog()中添加如下代码

SetBackgroundColor(RGB(246, 246, 246));


方法二:重载OnEraseBkgnd(),即WM_ERASEBKGND消息

//背景重绘<span style="color:#0000ff;">
</span>BOOL CConnectDlg::OnEraseBkgnd(CDC* pDC)
{
	// TODO:  在此添加消息处理程序代码和/或调用默认值

	CDialogEx::OnEraseBkgnd(pDC);

	CRect rect;
	GetWindowRect(&rect);
	CBrush brush(RGB(230, 230, 230));
	pDC->FillRect(&rect, &brush);

	return TRUE;
}


方法三:重载OnPaint(),即WM_PAINT消息

CRect   rect; 
CPaintDC dc(this); 
GetClientRect(rect); 
dc.FillSolidRect(rect,RGB(0,255,0));  //设置为绿色背景


方法五:重载OnCtlColor (CDC* pDC, CWnd* pWnd, UINT nCtlColor),即WM_CTLCOLOR消息

.h头文件添加 CBrush m_brush;

.cpp源文件添加 m_brush.CreateSolidBrush(RGB(255,0,0));

方法四:还是重载OnCtlColor (CDC* pDC, CWnd* pWnd, UINT nCtlColor), 即WM_CTLCOLOR消息

.h头文件添加 CBrush m_brush;

.cpp源文件添加 m_brush.CreateSolidBrush(RGB(255,0,0));

可以根据不同的控件类型返回不同的画刷,来实现不同控件颜色的设置

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: