最近需要用VC做一个界面,其中一段程序是为界面上所有控件(包括按钮、编辑框、文本框)重新设计字体,我写了一段程序可以用,但是非常麻烦:
fontsize_height=20; // nHeight
fontsize_Width=10.2;
VERIFY(font.CreateFont(
fontsize_height, // nHeight
fontsize_Width, // 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("宋体"))); // lpszFacename
GetDlgItem(IDC_START)->SetFont(&font);
GetDlgItem(IDC_STOP)->SetFont(&font);
GetDlgItem(IDC_OpenAccess)->SetFont(&font);
GetDlgItem(IDC_START)->SetFont(&font);
GetDlgItem(IDC_STOP)->SetFont(&font);
GetDlgItem(IDC_OpenAccess)->SetFont(&font);
GetDlgItem(IDC_STATIC1)->SetFont(&font);
GetDlgItem(IDC_STATIC2)->SetFont(&font);
GetDlgItem(IDC_EDIT1)->SetFont(&font);
GetDlgItem(IDC_EDIT2)->SetFont(&font);
GetDlgItem(IDC_STATIC5)->SetFont(&font);这个程序就是设置好字体的长和宽,挨个为每一个控件赋值,这样太不方便了。
不知道有没有一个简单的办法,能直接为所有控件设置字体。
本人没怎么学过VC,只是用到的时候才看看,基础不好,希望大家指教。
fontsize_height=20; // nHeight
fontsize_Width=10.2;
VERIFY(font.CreateFont(
fontsize_height, // nHeight
fontsize_Width, // 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("宋体"))); // lpszFacename
GetDlgItem(IDC_START)->SetFont(&font);
GetDlgItem(IDC_STOP)->SetFont(&font);
GetDlgItem(IDC_OpenAccess)->SetFont(&font);
GetDlgItem(IDC_START)->SetFont(&font);
GetDlgItem(IDC_STOP)->SetFont(&font);
GetDlgItem(IDC_OpenAccess)->SetFont(&font);
GetDlgItem(IDC_STATIC1)->SetFont(&font);
GetDlgItem(IDC_STATIC2)->SetFont(&font);
GetDlgItem(IDC_EDIT1)->SetFont(&font);
GetDlgItem(IDC_EDIT2)->SetFont(&font);
GetDlgItem(IDC_STATIC5)->SetFont(&font);这个程序就是设置好字体的长和宽,挨个为每一个控件赋值,这样太不方便了。
不知道有没有一个简单的办法,能直接为所有控件设置字体。
本人没怎么学过VC,只是用到的时候才看看,基础不好,希望大家指教。
2009-04-06 23:42 158人阅读 评论(0) 收藏 举报1.在构造函数中创建字体:
m_fontDlg.CreatePointFont(120, _T("黑体"));
2.在析构函数中删除字体:
m_fontBig.DeleteObject();
3.在OnInitDialog函数中设置所有控件字体:
CWnd *pWnd = GetTopWindow();
while (NULL != pWnd)
{
pWnd->SetFont(&m_fontDlg);
pWnd = pWnd->GetNextWindow();
}