MFC静态文本如何设置字体?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC静态文本如何设置字体?相关的知识,希望对你有一定的参考价值。
参考技术A staticCFont
font;
//定义静态变量,也可以定义全局变量或者对话框的成员变量,临时变量或者局部变量是不行的
font.CreatePointFont(120,
"隶书");
GetDlgItem(IDC_STATIC1)->SetFont(&font);
可将静态文本控件IDC_STATIC1的字体设置为隶书
静态文本字体参数变化
【中文标题】静态文本字体参数变化【英文标题】:Static text font parameters change 【发布时间】:2016-11-14 08:31:40 【问题描述】:我正在通过使用表单设计器编辑 .rc 文件为 MFC 类创建对话框表单。我有对话框表单和标签。
找不到如何更改标签的字体。
在属性窗口中我看到:
但是没有字体属性。他们在哪里?
【问题讨论】:
你需要为此编写代码。 【参考方案1】:你必须为此编写代码。 例如
CFont font;
font.CreateFont(
12, // nHeight
0, // nWidth
0, // nEscapement
0, // nOrientation
FW_NORMAL, // 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")); // lpszFacename
GetDlgItem(IDC_STATIC1)->SetFont(&font);
MSDN Link
Example
【讨论】:
天啊,为什么用这种古老的方式?也许是功能,但我找不到原因 为什么采用这种古老的方式?鉴于 MFC 于 1992 年首次发布,我认为这似乎还不错。 :) 如何使用它来更改字体大小?我尝试改变高度,但没有任何反应 @Dorokun192 能否请您显示您的代码,您如何使用代码,检查您在 GetDlgIem() 函数中传递的 ID。 @Dorokun192,你应该声明“CFont font;”作为成员数据,而不是局部变量。【参考方案2】:默认采用对话框字体。
如果您更改对话框的字体(通过更改对话框的属性),所有内容都将以相同的字体显示。
如果您只想更改标签的字体,则必须按照 Himanshu 告诉您的古老方式进行。
【讨论】:
以上是关于MFC静态文本如何设置字体?的主要内容,如果未能解决你的问题,请参考以下文章