MFC 请教怎样设置STATIC TEXT控件的字体大小和颜色

如题所述

第1个回答  推荐于2016-01-24
设置字体:STASTIC TEXT 的ID改为IDC_STATIC1或其他唯一的ID
LOGFONT lf; //逻辑字体结构
::ZeroMemory(&lf,sizeof(lf));
lf.lfHeight = 40;
lf.lfWidth= 0;
lf.lfEscapement = 0;
lf.lfOrientation = 0;
lf.lfWeight = FW_BOLD;
lf.lfItalic = FALSE;
lf.lfUnderline = FALSE;
lf.lfStrikeOut= FALSE;
lf.lfCharSet = DEFAULT_CHARSET;
lf.lfOutPrecision = OUT_DEFAULT_PRECIS;
lf.lfClipPrecision = CLIP_DEFAULT_PRECIS;
lf.lfQuality = DEFAULT_QUALITY;
lf.lfPitchAndFamily = VARIABLE_PITCH | FF_ROMAN;
m_font1.CreateFontIndirect(&lf);
GetDlgItem(IDC_STATIC1)->SetFont(&m_font1);

设置颜色,为窗体添加OnCtlColor()函数,函数内填写下面代码
HBRUSH CInitial::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_STATIC1)
{
pDC->SetTextColor(RGB(255,0,0)); //蓝色
}
// TODO: Return a different brush if the default is not desired
return hbr;
}

若满意请及时采纳,谢谢本回答被提问者和网友采纳

MFC 请教怎样设置STATIC TEXT控件的字体大小和颜色
\/\/改字体: 首先要把静态控件ID名称改一下IDC_STATIC1\/\/新建全局变量: CFont font;\/\/在OnInitDialog()中: \/\/font.CreatePointFont(480, _T("宋体"));\/\/GetDlgItem(IDC_STATIC1)->SetFont(&font);\/\/改颜色:\/\/窗体增加WM_CTLCOLOR消息响应\/\/在OnCtlColor()中:\/\/if (pWnd == GetDlgItem(IDC...

MFC中如何改变STATIC TEXT的大小
我说个简单的方法:加个成员变量CFont font;在OnInitDialog中font.CreatePointFont(120,L"楷体"); 120表示12号字体 当然STATIC 的ID要改,IDC_STA GetDlgItem(IDC_STA)->SetFont(&font);

如何改变mfc对话框中的控件中的字体大小
必须保证SetFont设置的字体对象在对话框关闭前一直有效。所以通常是使用指针或类成员的方式来保存所建立的字体对象。 非MFC程序,首先用CreateFont来建立一个字体句柄,然后再用SendMessage发给控件WM_SETFONT消息,将建立的字体句柄赋值过去,就可以了。 cHeight是字体的高度。cWidth是字体的宽度。cEscapement是字体的倾斜角...

关于vc mfc 创建大字体
直接在对话框上右键点属性,在General中修改字体就可以了。用代码修改的话,static控件的ID号要修改,Notify属性要复选上,你的参数设置没有问题,在下面加上 CWnd *cWnd = GetDlgItem(IDC_FONT);\/\/IDC_FONT为static控件的ID号 cWnd->SetFont(&m_font);cWnd->SetWindowText("设置需要的内容");就...

如何动态设置label控件的字体颜色属性
实际的应用中,可以用WM_CTLCOLOR 消息改变mfc中控件的颜色,比如现在就来改变一个static text控件的 字体、字体大小、字体颜色和背景色。例如对话框的类为CTestDlg.1. 在对话框的类中添加两个变量.方法:在classview选项卡中,选择CTestDlg,右键,add member variable.CBrush m_brush;CFont m_font;...

动态创建的Static Text类型如何更改其字体
1)CFont* pFont = m_static.GetFont();2)LOGFONT LogFont;pFont->GetLogFont(&LogFont);3)对LogFont直接操纵修改里面的字体选项\/\/如LogFont.lfUnderline = 1;设置下划线 4)pFont->Detach();第四步的目的是将pFont里装有的HFONT解除关联,否则pFont无法调用紧接的Create函数。5)pFont->...

MFC文字显示的具体步骤
首先不用保存为txt 1.MFC里面有个Static Text的控件 你把内容多输入点放里面就可以了 2MFC里面的Edit Control控件 它的属性有一项是Mutiline就是多行显示 你设置为TRUE 然后SetDlgItemText(IDC_EDIT,L"your content"); 你把your content换成你要的内容就OK了 中途还可以自己手动加\\n换行什么的 还...

如何在MFC设计超链接控件类
void SetTextColor(COLORREF clrText); \/\/ 设置文本颜色 void SetBackgroundColor(COLORREF clrBackground); \/\/设置背景颜色 void EnableTrack(BOOL bEnable = TRUE); \/\/ 是否鼠标跟踪.即鼠标移入控件时指针切换的功能 void SetLinkUrl(LPCTSTR lpszTargetUrl); \/\/ 设置目标链接地址 protected...

MFC中能改变TextOut输出的字体的大小吗
PITCH|FF_SWISS,_T("宋体"));\/\/创建新字体 oldFont=pDC->SelectObject(&newfont);\/\/选择新字体 pDC->SetTextColor(RGB(0,255,0));\/\/设置字体颜色 pDC->TextOutW(10, 10, pDoc->text); \/\/输出 pDC->SelectObject(oldFont);\/\/选择回老字体 newfont.DeleteObject();\/\/删除新字体 ...

MFC中的static text如何添加事件,使鼠标悬浮在控件上时显示一个隐藏的...
static做显示并不合理,涉及控件覆盖和延时等一系列问题,比较合理的就是使用CToolTip,这个显示更美观,设置延时后,可以实现悬停效果。m_tooltip.Create(this) ; m_tooltip.EnableToolTips(true); m_tooltip.SetTipTextColor(RGB(0,0,0)); m_tooltip.SetDelayTime(100);...

相似回答