社区
界面
帖子详情
如何改变对话框的背景色
yashi
2003-12-12 10:24:42
用mfc做一个基于对话框的程序,现在想改变该对话框的背景色,该怎么做?
...全文
299
9
打赏
收藏
如何改变对话框的背景色
用mfc做一个基于对话框的程序,现在想改变该对话框的背景色,该怎么做?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
checkyvc6
2003-12-12
打赏
举报
回复
首先定义和创建用来填充对话框背景色的画刷
在头文件中定义画刷对象
CBrush m_bkBrush;
在对话框的初始化函数中创建画刷
m_bkBrush.CreateSolidBrush(RGB(0,128,255));
HBRUSH CYourDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
switch(nCtlColor) {
case CTLCOLOR_STATIC:
pDC->SetBkMode(TRANSPARENT);
case CTLCOLOR_EDIT:
pDC->SetBkMode(TRANSPARENT);
case CTLCOLOR_DLG:
return static_cast<HBRUSH>(m_bkBrush.GetSafeHandle());
}
return CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
}
这种方法可以具体控制那个控件显示什么样的北京色和字体的颜色通过在前面加上
if(pWnd->GetDlgCtrlId() ==IDC_EDIT1)
{
//改变Pdc的属性
}
yashi
2003-12-12
打赏
举报
回复
哦,我用的是vc.net刚查了msdn,里面关于CWinApp::SetDialogBkColor只有一句话:
This function is obsolete.
看来在vc7.0里面只能用第二个方法了。
vcforever
2003-12-12
打赏
举报
回复
void SetDialogBkColor(
COLORREF clrCtlBk = RGB(192, 192, 192),//对话框的背景色
COLORREF clrCtlText = RGB(0, 0, 0) //显示文本的背景色
);
yashi
2003-12-12
打赏
举报
回复
1、在CXXApp.cpp文件中的InitInstance()函数中用
SetDialogBkColor();来设置程序中所有对话框的背景色
我用此方法,无效,是不是还有其它注意的地方。
2。在要改变背景色的对话框中重载WM_CTLCOLOR消息,在消息处理函数中如下处理
首先定义和创建用来填充对话框背景色的画刷
是有效的,但是会发生运行错误。什么原因呢?
modena
2003-12-12
打赏
举报
回复
OnEraseBkgnd中开始增加:
CRect rtClient;
GetClientRect(&rtClient);
pDC->PatBlt(0,0,rtClient.Width(),rtClient.Height(), WHITENESS);
return TRUE;
vcforever
2003-12-12
打赏
举报
回复
1、在CXXApp.cpp文件中的InitInstance()函数中用
SetDialogBkColor();来设置程序中所有对话框的背景色
2、在要改变背景色的对话框中重载WM_CTLCOLOR消息,在消息处理函数中如下处理
首先定义和创建用来填充对话框背景色的画刷
在头文件中定义画刷对象
CBrush m_bkBrush;
在对话框的初始化函数中创建画刷
m_bkBrush.CreateSolidBrush(RGB(0,128,255));
HBRUSH CYourDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
switch(nCtlColor) {
case CTLCOLOR_STATIC:
pDC->SetBkMode(TRANSPARENT);
case CTLCOLOR_EDIT:
pDC->SetBkMode(TRANSPARENT);
case CTLCOLOR_DLG:
return static_cast<HBRUSH>(m_bkBrush.GetSafeHandle());
}
return CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
}
sinhighly
2003-12-12
打赏
举报
回复
OnPaint
里画背景
zyleon
2003-12-12
打赏
举报
回复
调用CWinApp : : SetDialogBkColor可以改变所有应用程序的背景颜色。第一个参数指定了背景颜色,第二个参数指定了文本颜色。下例将应用程序对话设置为蓝色背景和黄色文本。
BOOL CSampleApp : : InitInstance ( )
{
…
//use blue dialog with yellow text .
SetDialogBkColor (RGB (0, 0, 255 ), RGB ( 255 , 255 , 0 ) ) ;
…
}
Developerljm
2003-12-12
打赏
举报
回复
BOOL CApp1View::PreCreateWindow(CREATESTRUCT& cs)
{
if (!CWnd::PreCreateWindow(cs))
return FALSE;
cs.dwExStyle |= WS_EX_CLIENTEDGE;
cs.style &= ~WS_BORDER;
cs.lpszClass = AfxRegisterWndClass(CS_HREDRAW|CS_VREDRAW|CS_DBLCLKS,
::LoadCursor(NULL, IDC_ARROW), HBRUSH(RGB(0x2,0x0,0x0)+1), NULL);//
return TRUE;
}
VC6
对话框
背景色
在Microsoft Visual C++ 6.0(简称VC6)中,开发Windows应用程序时,我们可能会遇到需要自定义
对话框
背景色
的需求。
对话框
是用户与应用程序交互的重要界面元素,其默认
背景色
通常为系统标准颜色,但有时为了个性化...
dlg_color.rar_dlg_color_vc++
对话框
_
对话框
_
背景色
_
背景色
vc
"www.pudn.com.txt"可能是一个链接到更多资源或教程的文本文件,而"dlg_color"可能是项目的源代码文件,包含实现
对话框
背景色
改变
的细节。 总之,自定义
对话框
背景色
是提升用户体验的一个简单但有效的手段。通过...
改变
MFC
对话框
背景色
、控件内的字体
在MFC应用中,
改变
对话框
的
背景色
和控件内字体的颜色是一项常见的需求,这可以通过处理WM_CTLCOLOR消息来实现。这个消息在Windows消息系统中被用来通知应用程序为特定控件设置画刷,从而
改变
其背景颜色。在MFC中,...
在VC++6.0中给
对话框
设置
背景色
或者背景图片
在VC++6.0中给
对话框
设置
背景色
或者背景图片
改变
对话框
的
背景色
设置各种
背景色
本教程将详细介绍如何在Microsoft Visual C++(VC)环境下
改变
对话框
的
背景色
,实现个性化定制。 首先,我们需要理解
对话框
的工作原理。
对话框
是基于资源的,通常在.rc文件中定义,然后在.CPP文件中进行消息处理。...
界面
15,980
社区成员
115,867
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章