MFC 如何改变对话框的默认背景颜色(转)

下面介绍三种方法:实现改变对话框的默认背景颜色:

(1)可以在CLotteryApp::InitInstance()设置更新对话框的背景颜色

调用SetDialogBkColor(RGB(160,32,240)) 即可以改变背景颜色

注意这里绘制的颜色是针对程序中所有的对话框

SetDialogBkColor(RGB(0,0,255),RGB(255,0,0));

前一个RGB是背景色,后一RGB是文本颜色

(2)也可以再CLotteryDlg::OnPaint() 函数里的 else 之后括号里插入如下代码:

CRect rect;

CPaintDC dc(this);

GetClientRect(rect);

dc.FillSolidRect(rect,RGB(189,250,200));  颜色可以自己随便设置

(3) 利用ClassWizard重载OnCtlColor(),即WM_CTLCOLOR消息

在要着色的对话框中申明一个变量,CBRUSH  m_hbrush;然后在项目的Dlg类初始化函数中给m_hbrush赋值。

m_brush.CreateSolidBrush(RGB(0, 255, 0));

然后在OnCtlColor(...)返回该画刷就可以了,如下。

HBRUSH CLotteyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)

{

HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

switch (nCtlColor)

{

case CTLCOLOR_DLG:

HBRUSH aBrush;

aBrush = CreateSolidBrush(RGB(0, 150, 0));

hbr = aBrush;

break;

}

return hbr;

}

再介绍一下:如何清空编辑框里的内容

清空指定的编辑框内容:SetDlgItemText(IDC_EDIT,""); //更新编辑框里的内容

时间: 2024-10-23 19:53:47

MFC 如何改变对话框的默认背景颜色(转)的相关文章

导航条——动态改变导航菜单的背景颜色

1.概述 在浏览一些网站时,当鼠标经过导航菜单某一项时,其背景颜色将切换为其他颜色,实现这种简单的效果会更吸引浏览者的注意. 2.技术要点 本实例主要是应用JavaScript方法来动态改变<td>标签的背景颜色实现的.当鼠标经过<td>表示的导航菜单时,会触发onMouseOver事件,然后调用自定义的JavaScript方法改变<td>的背景颜色:当鼠标移出<td>时,会触发onMouseOut事件,调用自定义的JavaScript方法还原背景颜色为初始

css selection改变文字反选的背景颜色

<style type="text/css"><!--.ai::-moz-selection { background:#cc0000; color:#fff; }.ai::selection { background:#cc0000; color:#fff; }.av::-moz-selection { background:#FFCC00; color:#CC33FF; }.av::selection { background:#FFCC00; color:#CC

在wpf datagrid中,想要根据一个条件来改变datagrid行的背景颜色

原文:在wpf datagrid中,想要根据一个条件来改变datagrid行的背景颜色 例如根据学生的年龄来修改,年龄小于18岁的,该行为红色显示,如何做到 解决方法 1: 在你需要加载的键入代码,我一般放在TabControl的selected事件中 ?Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.ApplicationIdle, new Action(方法名)); ? 我个人定义了一个方法 ?for (i

设置vim默认参数 例如设置默认背景颜色

因个人喜好问题,本人使用vim的时候喜欢将背景颜色设为dark. 但是每次打开一个vim的时候都要重新设置一次,感觉非常麻烦. 总要输入[Esc] :set bg=dark很不方便 粗暴的办法是直接进入/etc/文件夹修改配置文件,方法如下,但是不推荐使用这种方法, 因为/etc/文件夹下的文件需要root权限才能修改,而且一旦修改错了整个系统容易出现问题 方法一: CentOS为例,其配置文件路径为 /etc/vimrc (/etc/vim/vimrc不同版本,可能不一样) 首先获得root权

cocos2dx-js html5网页版修改默认背景颜色

网上找了很多教程,资料很少,基本上也不能用,自己尝试着修改了很多地方,终于有用了 然后我退回了所有的修改,最终确定了可用的地方. 首先最重要的是cocos自身默认的背景色,修改frameworks\cocos2d-html5\CCBOOT.js,里,_initEvents函数里,最后一行添加一句 _initEvents: function () {        ... cc.eventManager.addCustomListener(cc.game.EVENT_HIDE, function

EXTJS根据值Value改变gridpanel单元格背景颜色或者设置整行字体颜色

第一步. 设置样式 .reportColor4{background: #93A9C1;}.reportColor5{background: #EEEEEE;} 第二步.修改单元格样式 header : '流通类型',width : 80,sortable : true,align : 'center',dataIndex: 'BR_TYPE',// css : 'background: #acdaf4;', // ----- 设置整个单元格的样式,但是不能根据条件变化renderer:func

点击input消除默认背景颜色

在谷歌浏览器会出现默认点击input框黄色背景,如何去除? //消除google浏览器黄色框 input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus { box-shadow:0 0 0 60px #eee inset; -webkit-text-fill-color: #878787; } 原文地址:https://www.cnblogs.com/huanghuali/p/989316

动态改变Listview的item背景颜色和item中字体的颜色

首先非常感谢原文章作者. 今天项目用到Listview点击item变色.网上找了好久,都没有找到简单的方法,好像只能重写getview(): 网上找到了一个比较简单的例子,但是不懂为什么,先记录下来以后慢慢学习. <span style="font-size:24px;">package leoli.com.focuslistview; import android.graphics.Color; import android.support.v7.app.AppCompa

修改登录时填写缓存用户名时的默认背景颜色

input:-webkit-autofill , textarea:-webkit-autofill, select:-webkit-autofill { -webkit-text-fill-color: #333 !important; -webkit-box-shadow: 0 0 0px 1000px #fff inset !important; background-color:#fff; background-image: none; transition: background-co