好的,刚刚发现使用DEFAULT_GUI_FONT
实际上用作默认的GUI字体是错误的....有一个NONCLIENTMETRICS结构我被告知要使用,但是我不确定我应该使用哪些字体返回 - 即状态字体,消息字体和字幕字体之间有什么区别,我应该在何时使用它们?
答案 0 :(得分:1)
说明很清楚,不是吗?
lfMenuFont指向LOGFONT的指针 包含信息的结构 关于菜单栏中使用的字体。
lfStatusFont指向LOGFONT的指针 包含信息的结构 关于状态栏和中使用的字体 工具提示。
lfMessageFont指向LOGFONT的指针 包含信息的结构 关于消息框中使用的字体。
使用菜单字体作为下拉菜单,使用状态行显示状态行,使用消息字体作为消息框。
编辑:遗憾的是lfCaptionFont和lfSmCaptionFont的描述是自我引用的:
lfCaptionFont指向LOGFONT的指针 包含信息的结构 关于标题字体。
窗口的标题是客户区上方的矩形,其中显示窗口标题和关闭按钮。这使用标题字体。消息字体用于消息框。
答案 1 :(得分:0)
显然“MS Shell Dlg”是一个魔术字体名称,它映射到默认字体{在所有中等版本的Windows上,虽然XP引入了“MS Shell Dlg 2”,但并非所有语言版本:(} - { {3}} - 有一些信息preemptive obligatory xkcd link以及更多here和here。
但你应该去here。当然,您仍然需要从SystemParametersInfo
获得首选尺寸。