如何改变控件的字体?

月光莫利亚 2003-08-10 08:58:25
我在View上Create了一些控件,例如GroupBox,Button;请问如何改变这些控件上的字体,直接在View中设置CFont不起作用。
...全文
106 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyt_hf 2003-08-10
  • 打赏
  • 举报
回复
void CDlgDlg::OnButton1()
{
CFont *pFont = m_Sample.GetFont();

LOGFONT pLogFont;
TRACE("Font:%p\n",pFont);

pFont->GetLogFont(&pLogFont);

LOGFONT lf;
memset(&lf, 0, sizeof(LOGFONT));
lf.lfHeight =pLogFont.lfHeight*1.5;
lf.lfCharSet=pLogFont.lfCharSet;
strcpy(lf.lfFaceName, pLogFont.lfFaceName);
CFont *pNewFont =new CFont;
pNewFont->CreateFontIndirect(&lf);

m_Sample.SetFont(pNewFont);

}

这段代码能够把m_Sample这个控件的字体放大1.5倍
zyleon 2003-08-10
  • 打赏
  • 举报
回复
函数原型:
BOOL CreateFont( int nHeight, int nWidth, int nEscapement, int nOrientation, int nWeight, BYTE bItalic, BYTE bUnderline, BYTE cStrikeOut, BYTE nCharSet, BYTE nOutPrecision, BYTE nClipPrecision, BYTE nQuality, BYTE nPitchAndFamily, LPCTSTR lpszFacename );

参数说明:
nHeight :字体高度.>0:字体的高度值;=0:字体采用缺省直.<0:此值的绝对值为高度.
nWidth :字体宽度.
nEscapement :文本行的倾斜度.
nOrientation :字符基线的倾斜度.
nWeight :字体的粗细.如下:
.FW_DONTCARE
.FW_THIN
.FW_EXTRALIGHT
.....
bItalic :字体是否为斜体
bUnderline :字体是否带下划线
cStrikeOut :字体是否带删除线
nCharSet :字体的字符集
.ANSI_CHARSET
.DEFAULT_CHARSET
.SYMBOL_CHARSET
......
nOutPrecision :字符的输出精度
nClipPrecision :字符裁剪的精度
nQuality :字符的输出质量
nPitchAndFamily :字符间距和字体族(低位说明间距,高位说明字符族)
lpszFacename :字体名称
[程序实现]
假设你已有了名为My的对话框工程.并有一个ID=IDC_EDIT1的Edit控件.
class CMyDlg : public CDialog
{
public:
CFont m_Font;
........
};

BOOL CTMyDlg::OnInitDialog()
{
CDialog::OnInitDialog();

// TODO: Add extra initialization here
CFont m_Font;
m_Font.CreateFont(-11,0,0,0,100,FALSE,FALSE,0,ANSI_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,FF_SWISS,"Arial");
CEdit *m_Edit=(CEdit *)GetDlgItem(IDC_EDIT1);
m_Edit->SetFont(&m_Font,FALSE);
return TRUE; // return TRUE unless you set the focus to a control
}
lyt_hf 2003-08-10
  • 打赏
  • 举报
回复
CWnd *pControlWnd= GetDlgItem (控件的ID号 )
pControlWnd->SetFont(...);
tserpent 2003-08-10
  • 打赏
  • 举报
回复
CWnd::SetFont()

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧