MFC静态文本框设置字体和颜色

在MFC中,static text控件可以很方便的显示文字,但是如果想修改字体风格大小以及颜色,应该怎么修改呢?

1.要修改字体,需要用到CFont类,这个类可以修改字体的各种属性

1 CFont m_font;
2 m_font.CreateFont(14,0,0,0,FW_BOLD,FALSE,FALSE,FALSE,
3                    ANSI_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,
4                    DEFAULT_QUALITY,DEFAULT_PITCH | FF_SWISS,_T("宋体"));//宽度为14、粗体的宋体字符

2.重载WM_CTLCOLOR消息的响应函数,框架在将要绘制子控件时调用此函数,我们可以在这个消息的响应函数里添加代码来绘制我们的控件

1  if (pWnd->GetDlgCtrlID() == IDC_STATIC)
2  {
3       pDC->SelectObject(&m_font);//选择字体
4  }

3.修改颜色,也是在OnCtlColor函数中

1 if (pWnd->GetDlgCtrlID() == IDC_STATIC)
2 {
3     pDC->SetTextColor(RGB(255, 0, 0));//用RGB宏改变颜色   4 }

4.最终代码

 1 HBRUSH CXXDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
 2 {
 3     HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);
 4
 5       // TODO:  在此更改 DC 的任何特性
 6       if (pWnd->GetDlgCtrlID() == IDC_STATIC)
 7       {
 8             pDC->SetTextColor(RGB(255, 0, 0));//用RGB宏改变颜色
 9             pDC->SelectObject(&m_font);
10       }
11      // TODO:  如果默认的不是所需画笔,则返回另一个画笔1
12     return hbr;
13 }     

5.效果图

时间: 2024-08-06 19:29:18

MFC静态文本框设置字体和颜色的相关文章

MFC静态文本框

1.简述 静态文本框(Static Text):静态文本框是最简单的控件,它主要用来显示文本信息,不能接受用户输入,一般不需要连接变量,也不需要处理消息. 2.Functions 2.1 void CWnd::SetWindowText( LPCTSTR lpszString ) void CStaticDialogDlg::OnBnClickedButton1() { // TODO: 在此添加控件通知处理程序代码 m_stext.SetWindowTextW(TEXT("Hello"

静态文本框字体,颜色。网络通信软件分析。

设置静态文本框控件的背景色,文本框中字体.颜色: HBRUSH CUDPDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: Change any attributes of the DC here if (pWnd->GetDlgCtrlID()==IDC_STATIC_TITLE) { //设置绘图dc的背

【MFC设置静态文本框背景为透明】

视图类中加入OnCtlColor()函数: IDC_STATIC1为静态文本框ID HBRUSH CAngleView::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CFormView::OnCtlColor(pDC, pWnd, nCtlColor); if((pWnd->GetDlgCtrlID() == IDC_STATIC1)) { pDC->SetTextColor(RGB(255,255,255))

【转】VS2010/MFC编程入门之二十(常用控件:静态文本框)

本文转自鸡啄米:http://www.jizhuomi.com/software/177.html 感 谢鸡啄米对本文的贡献. 上一节鸡啄米讲了颜色对话框之后,关于对话框的使用和各种通用对话框的介绍就到此为止了.从本节开始鸡啄米将讲解各种常用控件的用法.常用控件主要包括:静态文本框.编辑框.单选按钮.复选框.分组框.列表框.组合框.图片控件.列表控件.树形控件和进度条控件等等.本节教程先来讲解静态文本框的使用. 控件的通知消息 在将静态文本框的使用之前,先大概讲讲控件的通知消息. 当控件有事件发

MFC更新静态文本框中数据,防止覆盖

1 在更新静态文本框之前首先隐藏控件 2 然后在显示出来. 3 代码: 4 GetDlgItem(IDC_TEXT_PM)->ShowWindow(SW_HIDE); 5 UpDate();//更新数据函数,自定义的 6 GetDlgItem(IDC_TEXT_PM)->ShowWindow(SW_SHOW);

VS2010-MFC(常用控件:静态文本框)

转自:http://www.jizhuomi.com/software/179.html 关于对话框的使用和各种通用对话框的介绍就到此为止,从本节开始将讲解各种常用控件的用法.常用控件主要包括:静态文本框.编辑框.单选按钮.复选框.分组框.列表框.组合框.图片控件.列表控件.树形控件和进度条控件等等.本节教程先来讲解静态文本框的使用. 控件的通知消息 在将静态文本框的使用之前,先大概讲讲控件的通知消息. 当控件有事件发生时,它会向父窗口发送通知消息.最常发生的事件就是鼠标单击了,此时控件会向父窗

AttributedString - 富文本(不同字体大小颜色,下划线中划线)

1 #import "ViewController.h" 2 3 @interface ViewController () 4 5 @end 6 7 @implementation ViewController 8 9 - (void)viewDidLoad { 10 [super viewDidLoad]; 11 // Do any additional setup after loading the view, typically from a nib. 12 13 NSArray

Windows static控件(静态文本框控件)

文本不克不及主动换行,超越窗口规模会被隐蔽: 每次更改文本都要先擦除配景再从新输入,比拟费事. 实践开辟中普通运用静态文本框控件来输入文本.静态文本框是Windows 的一种规范控件,可以用来在窗口上显示一段文本,而且文本轻易遭到掌握.除了静态文本框,Windows的规范控件还有许多种,例如按钮.下拉菜单.单选按钮.复选框等.其实,控件也是一种窗口,也运用 CreateWindow 函数来创立.然则它们运用的窗口类的名字比拟特别,是由Windows预界说的:静态文本框控件的窗口类名是static

运用一下 Runtime 修改文本框占位符的颜色

/** 运行时 :runtime 可以访问隐藏的一些属性**在这个代码中 修改 文本框占位符 的颜色 */ + (void)initialize { [self getIvars]; [self getProperties]; } //获取所有属性 + (void)getProperties { unsigned int count = 0; objc_property_t *properties = class_copyPropertyList([UITextField class], &co