VC++ 设置对话框的背景颜色和静态文本颜色
来源:互联网 发布:黑猫白猫 知乎 编辑:程序博客网 时间:2024/04/29 06:51
晚上编一个小程序,涉及到如何设置对话框的背景颜色和静态文本颜色。这在VC6.0中本来是一句话就搞定的事。在应用程序类中的InitInstance()函数添加:
谁知这在VS 2005上竟不起作用,到网上一查,原来SetDialogBkColor函数在VS 2003中就已经不支持了。只得另辟蹊径。另外的办法就是响应WM_CTLCOLOR消息,在消息映射函数中添加:
照这样,除了静态文本可以控制,还有按钮、文本编辑框可以控制其背景颜色,因为我看到有下列的宏
- //设置对话框背景和文本颜色
- SetDialogBkColor(RGB(160,180,220),RGB(0,0,0));
- HBRUSH CFileSpltDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
- {
- HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
- // TODO: 在此更改DC 的任何属性
- // TODO: 如果默认的不是所需画笔,则返回另一个画笔
- // Determine if drawing a dialog box . If we are , return +handle to
- //our own background brush . Otherwise let windows //handle it .
- switch(nCtlColor)
- {
- case CTLCOLOR_STATIC: //对所有静态文本控件的设置
- {
- //设置背景为透明
- pDC->SetBkMode(TRANSPARENT);
- pDC->SetTextColor(RGB(0,0,0)); //设置字体颜色
- break;
- }
- case CTLCOLOR_DLG:
- {
- return (HBRUSH) m_brush .GetSafeHandle();
- break;
- }
- default:
- break;
- }
- return hbr;
- }
- HBRUSH CFileSpltDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
- {
- HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
- // TODO: 在此更改DC 的任何属性
- // TODO: 如果默认的不是所需画笔,则返回另一个画笔
- // Determine if drawing a dialog box . If we are , return +handle to
- //our own background brush . Otherwise let windows //handle it .
- switch(nCtlColor)
- {
- case CTLCOLOR_STATIC: //对所有静态文本控件的设置
- {
- //设置背景为透明
- pDC->SetBkMode(TRANSPARENT);
- pDC->SetTextColor(RGB(0,0,0)); //设置字体颜色
- break;
- }
- case CTLCOLOR_DLG:
- {
- return (HBRUSH) m_brush .GetSafeHandle();
- break;
- }
- default:
- break;
- }
- return hbr;
- }
- VC++ 设置对话框的背景颜色和静态文本颜色
- VC++ 设置对话框的背景颜色和静态文本颜色
- VC编程中如何设置对话框的背景颜色和静态文本颜色
- 关于设置对话框的背景颜色,和设置控件的字体颜色或背景颜色VC++
- VC 对话框设置背景颜色和图片
- VC 对话框设置背景颜色和图片
- VC 对话框设置背景颜色和图片
- 关于设置对话框的背景颜色,和设置控件的字体颜色或背景颜色
- 关于设置对话框的背景颜色,和设置控件的字体颜色或背景颜色
- 设置对话框的背景颜色
- VC/MFC如何设置对话框背景颜色
- VC/MFC如何设置对话框背景颜色
- VC/MFC如何设置对话框背景颜色
- VC/MFC如何设置对话框背景颜色
- VC/MFC如何设置对话框背景颜色
- VC/MFC如何设置对话框背景颜色
- VC/MFC如何设置对话框背景颜色
- VC/MFC如何设置对话框背景颜色
- vs2010 调试快捷键
- 第二节 C++ 基础知识补习(完善中)
- Android下使用正则表达式
- 基于DritectX的DirectUI框架-GXUI库设计与实现
- Eclipse 在开发中使用到的快捷键
- VC++ 设置对话框的背景颜色和静态文本颜色
- Could not find *.apk!解决办法
- Red Hat 英文版改中文,安装拼音输入法
- ListControl控件、树控件和标签控件
- DSS Source Code Analyse (10) - RTPSession::Run
- 给学习C语言的新手的求和程序及求积程序
- 35 Mobile UI Examples for Inspiration
- windows server 2008 x64中安装office2003,dcom中找不到microsoft excel application
- 在View的onFinishInflate处初始化view内的各元素