在MFC的Dialog工程中生成一个CStatic的自定义类,类名例如为:CColorStatic

定义必要的变量:

protected:COLORREF m_crText;          // 字体颜色COLORREF m_crBackColor;              // 背景颜色HBRUSH    m_hBrush;          // 画刷LOGFONT     m_lf;              // 字体大小CFont     m_font;            // 字体bool   m_bTran;            // 是否透明

重载CColorStatic类中的=WM_CTLCOLOR事件,注意有=的,不是WM_CTLCOLOR事件

HBRUSH CColorStatic::CtlColor(CDC* pDC, UINT nCtlColor)
{// TODO:  在此更改 DC 的任何属性// TODO:  如果不应调用父级的处理程序,则返回非 null 画笔if (CTLCOLOR_STATIC == nCtlColor){pDC->SelectObject(&m_font);pDC->SetTextColor(m_crText);pDC->SetBkColor(m_crBackColor);if (m_bTran == true)pDC->SetBkMode(TRANSPARENT);}return m_hBrush;

另外添加一些接口类函数

void CColorStatic::SetTextColor( COLORREF crText )
{m_crText = crText;RedrawWindow();
}void CColorStatic::SetFontSize(int nSize)
{nSize *= -1;m_lf.lfHeight = nSize;m_font.DeleteObject();m_font.CreateFontIndirect(&m_lf);RedrawWindow();
}void CColorStatic::SetBackColor(COLORREF crBackColor)
{m_crBackColor = crBackColor;RedrawWindow();
}void CColorStatic::SetTransparent(bool bTran)
{m_bTran = bTran;RedrawWindow();
}

至此CColorStatic类就建好了。

记得添加CColorStatic的头文件。

菜单栏中添加一个菜单项,并为其关联成员变量m_static1,然后添加事件处理程序。编辑代码如下:

void CLXTDlg::OnStatic32790()

{

// TODO: 在此添加命令处理程序代码

m_static1.SetTransparent(FALSE);

m_static1.SetTextColor(RGB(0,255,255));

m_static1.SetBackColor(RGB(0,255,0));

m_static1.SetFontSize(15);

}

在给静态文本控件关联变量时,我在类向导中找不到其ID,然后把其ID从IDC_STATIC改为IDC_STATIC1,就出现在了类向导里。

其实也可不用类向导,自己手动关联。

手动为控件关联成员变量的方法:

例如:为ID = IDC_STATIC1的静态文本控件关联成员变量

1. 在.h中声明:

CColorStatic m_static1; // 声明变量,注意这里的 CColorStatic是上面自定义的类哦。

2. 在.cpp中进行关联:

void CLXTDlg::DoDataExchange(CDataExchange* pDX)

{

CDialog::DoDataExchange(pDX);

DDX_Control(pDX, IDC_STATIC1, m_static1);// 关联控件和变量

}

转载于:https://www.cnblogs.com/lxt287994374/archive/2013/03/06/2945545.html

VS2010 MFC中改变static字体颜色、大小、背景颜色(自定义类),及手动关联变量的方法...相关推荐

  1. MFC开发IM-第五篇、MFC中改变static字体颜色、大小、背景颜色(自定义类),及手动关联变量的方法

    在MFC的Dialog工程中生成一个CStatic的自定义类,类名例如为:CColorStatic 定义必要的变量: protected:COLORREF m_crText; // 字体颜色COLOR ...

  2. 如何在Visual Studio中调整代码字体的大小和颜色

    1. 找到并点击[设置]按钮 2. 点击[选项] 3. 在[环境]中找到[字体和颜色],然后就可以自己调整了. 

  3. AD16原理图.schdot中批量修改标签中的文本字体、大小、颜色

    1)使用鼠标左键区域选中需要修改的文本,或按住shift键使用鼠标左键选择分布在图中各处的需要修改的文本 2)按住shift键,鼠标左键双击选中的任一文本,弹出如下的SCH Inspector弹窗 3 ...

  4. js点击按钮改变字体大小并给他颜色_如何在Elementor中修改文本的字体、大小、颜色、样式...

    本文将介绍Elementor网页编辑器中如何修改文本的字体.大小.颜色和样式. 原文首发于:https://loyseo.com/how-to-change-font-size-color-famil ...

  5. MFC中改变按钮颜色的方法

    本文参考学习 https://blog.csdn.net/zxccaoya/article/details/54142523 而来. 这里介绍mfc 中改变按钮颜色的最简单方法. 使用CMFCButt ...

  6. WPF中GDI+图形图像的绘制:(一)绘制文本——动态设置字体、大小、颜色

    GDI+(Graphics Device Interface Plus图形设备接口加)是.NET框架的重要组成部分,负责在屏幕和打印机上绘制图形图像和显示信息.GDI+不但在功能上比GDI 要强大很多 ...

  7. 修改ToolBar的标题、子标题字体大小和颜色,toolbar menu字体的大小和颜色以及注意事项

    在 Android 5.0 开始推出一个 Material Design 风格的导航Toolbar 控件.由于Toolbar的可定制度高,所以已经逐步替代掉了ActionBar.可以自定义以下几种元素 ...

  8. CSDN-Mardown-改变文本的字体、大小、颜色、背景色、对齐

    CSDN-Mardown-改变文本的字体.大小.颜色.背景色.对齐 1.改变文本字体 代码举例: <font face="宋体">这是宋体</font> & ...

  9. 改变Android的hello world程序字体颜色和背景颜色

    1.使用Color类的常量,如: int color = Color.BLUE; // 创建一个蓝色 是使用Android提供的颜色 2.通过ARGB构建,如: int color = Color.a ...

最新文章

  1. html与html5论文区别,HTML、XML、XHTML和HTML5的异同
  2. Windows Azure虚拟机概览
  3. 可视化之Earth NullSchool
  4. 机器学习 vs. 深度学习
  5. 程序员如何写简历?来自硅谷的八条建议
  6. python 反传播_岗位 | 滴滴急招反欺诈数据分析实习生(可转正)!字节跳动+德勤实习生项目热招中...
  7. android preferenceActivity的用法
  8. mediamind SyncAds
  9. iPhone13系列预计5499起;蔚来回应31岁企业家“自动驾驶”车祸去世;小米取消MIX4防丢失模式无卡联网服务|极客头条...
  10. 网络干货,无论是运维还是开发都要知道的网络知识系列之(八)
  11. JSON.stringify(value[, replacer [, space]])
  12. 传奇中添加NPC及功能脚本
  13. mysql查询周数_MySQL如何获取一个指定日期所对应本年度的周数(WEEK函数)呢?
  14. 【小程序】小程序多次扫描不同二维码参数不生效问题
  15. smbus电池信息读取
  16. 销售易CRM怎么样?
  17. [含文档+源码等]微信小程序校园生活小助手+后台管理系统前后分离VUE[包运行成功]
  18. 转载一篇不错的文章:谈谈“野生”Java程序员学习的道路
  19. PS压缩1寸照片大小降低到50KB以下的方法
  20. shell空文件夹查找

热门文章

  1. 备忘录吕吕没有备忘录十新建_一份备忘单,可帮助您记住CSS自定义属性
  2. 服务器部署基础知识_我在生产部署期间学到的知识
  3. 女性程序员大会ghc_在女性科技大会上成为男人的感觉
  4. jpg在线合并jpg_JPG如何运作
  5. 顺F分享,你是在裸奔吗?
  6. Spring servlet
  7. display会影响canvas吗_多动症会影响智商吗?
  8. 学习Python往哪个方向发展好
  9. 如何用 Graylog 管理日志?- 每天5分钟玩转 Docker 容器技术(93)
  10. 新手安装ruby on rails(ror)的成功必备手册