MFC对话框美化(文本颜色、字体、背景颜色修改)
2015-05-07 10:22
716 查看
MFC默认界面太寒碜我已经无力吐槽了,最近稍微做了一些美化的内容,主要是对话框背景颜色的修改,控件文字大小、字体、颜色的修改,多种配色使得对话框风格活泼不少。
修改前后对比图:
代码如下,仅列出需要修改的函数:
参考资料:
MFC字体(一)(控件文字字体)
MFC字体(二)(控件字体颜色)
修改前后对比图:
代码如下,仅列出需要修改的函数:
[code]// VirtualMeterDlg.cpp : 实现文件 // BOOL CVirtualMeterDlg::OnInitDialog() { // ... 为便于阅读,自动生成代码省略 // TODO: 在此添加额外的初始化代码 ////【1.修改IDC_STATIC_STATION控件字体】 CFont* p_font = new CFont; p_font->CreateFont(36, // nHeight,文字大小 0, // nWidth 0, // nEscapement 0, // nOrientation FW_BOLD, // nWeight,加粗 FALSE, // bItalic FALSE, // bUnderline 0, // cStrikeOut ANSI_CHARSET, // nCharSet OUT_DEFAULT_PRECIS, // nOutPrecision CLIP_DEFAULT_PRECIS, // nClipPrecision DEFAULT_QUALITY, // nQuality DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily _T("Arial")); // lpszFac,字体 ((CStatic*)GetDlgItem(IDC_STATIC_STATION))->SetFont(p_font, FALSE); ((CStatic*)GetDlgItem(IDC_STATIC_STATION))->SetWindowText(_T("MS50U000")); return TRUE; // 除非将焦点设置到控件,否则返回 TRUE } void CVirtualMeterDlg::OnPaint() { if (IsIconic()) { // ... 为便于阅读,自动生成代码省略 } else { ////【2.修改对话框背景颜色】 CRect rect; CPaintDC dc(this); GetClientRect(rect); dc.FillSolidRect(rect, RGB(240, 240, 220)); CDialogEx::OnPaint(); } } ////【3.响应WM_CTL_COLOR消息,修改STATIC控件和EDIT控件的文字颜色和背景颜色】 HBRUSH CVirtualMeterDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: 在此更改 DC 的任何特性 if (nCtlColor == CTLCOLOR_STATIC) { //总体颜色设置 pDC->SetTextColor(RGB(50, 50, 200)); //字体颜色 pDC->SetBkColor(RGB(240, 240, 220)); //字体背景色 //STATIC控件单独颜色设置 switch (pWnd->GetDlgCtrlID()) { case IDC_STATIC_TEMP: case IDC_STATIC_HUMI: case IDC_STATIC_BARO: pDC->SetTextColor(RGB(50, 50, 100)); //字体颜色 break; case IDC_STATIC_STATION: pDC->SetTextColor(RGB(255, 100, 50)); //字体颜色 default: break; } } if (nCtlColor == CTLCOLOR_EDIT) { pDC->SetTextColor(RGB(150, 105, 200)); //字体颜色 } // TODO: 如果默认的不是所需画笔,则返回另一个画笔 return hbr; }
参考资料:
MFC字体(一)(控件文字字体)
MFC字体(二)(控件字体颜色)
相关文章推荐
- MFC之对话框美化(背景图片,按钮字体大小,字形,背景颜色)
- MFC对话框修改背景颜色或添加背景图片、控件背景与字体颜色的修改
- MFC 基本操作 --修改对话框、静态文本背景颜色
- 【VS开发】VS2010 MFC中控件、对话框等背景颜色动态修改的方法
- MFC修改Button背景颜色和字体颜色
- MFC对话框如何使用工具栏并修改工具栏的背景颜色与自绘对话框统一
- MFC对话框如何使用工具栏并修改工具栏的背景颜色与自绘对话框统一(二)
- MFC如何设置对话框的背景和字体颜色
- MFC基于对话框的的背景颜色修改
- MFC 修改对话框的背景颜色及透明度
- MFC基于对话框的的背景颜色修改
- MFC修改button的颜色、背景、边框、对话框标题
- MFC中设置静态文本的字体颜色、背景透明以及解决字体重叠
- MFC 可以设置背景色、字体、字体颜色、透明背景的 Static 静态文本控件
- MFC 可以设置背景色、字体、字体颜色、透明背景的 Static 静态文本控件
- MFC中设置静态文本的字体颜色、背景透明以及解决字体重叠
- MFC中设置静态文本的字体颜色、背景透明以及解决字体重叠
- MFC中设置静态文本的字体颜色、背景透明以及解决字体重叠
- MFC修改button的颜色、背景、边框、对话框标题
- MFC——设置控件文本字体、大小、颜色、背景