在DIALOGEX Visual C ++中设置可变字体大小

时间:2016-01-30 05:06:34

标签: c++ visual-studio visual-c++

我正在尝试在visual c ++(6.0 Standard Edition)对话框中使用可变字体大小。

这是我的代码。 我该如何实施呢?

IDD_HPLED_FORM DIALOGEX 0, 0, 329, 225
STYLE DS_MODALFRAME | WS_CHILD | WS_CAPTION
//FONT 8, "MS Sans Serif"
FONT 14, "MS Sans Serif"
BEGIN

    EDITTEXT        IDC_VF,32,44,35,20,ES_RIGHT | ES_AUTOHSCROLL | 
                    ES_READONLY
    RTEXT           "Vf:",IDC_STATIC,16,44,11,8
    EDITTEXT        IDC_VR,32,4,35,20,ES_RIGHT | ES_AUTOHSCROLL | 
                    ES_READONLY
    RTEXT           "Vr:",IDC_STATIC,16,4,11,8

END

我如何使用不同字体大小的Vr和Vf?

1 个答案:

答案 0 :(得分:1)

添加对话框类的成员变量。

CFont       Font;
LOGFONT     FontData;

创建字体并在OnInitDialg()的编辑框中进行设置。

BOOL CMy...Dlg::OnInitDialog()
{
    ...

    HFONT hFont = (HFONT)::GetStockObject(DEFAULT_GUI_FONT);
    ::GetObject(hFont, sizeof(LOGFONT), &FontData);
    Font.CreateFontIndirect(&FontData);
    GetDlgItem(IDC_VF)->SetFont(&font, TRUE);
}

然后在对话框关闭时调用Font.DeleteObject()。

Font.DeleteObject();