属性表显示得太大

Property Sheet displays too large

本文关键字:显示 属性      更新时间:2024-04-28

我有一个附带的软件,它使用Tools/Options的属性表。对于我的几乎所有客户来说,一切都很完美,但对于只有两三个的客户来说,属性表似乎对话框单元太大了。字体、编辑框和所有控件都太大了约1/3,但原点为0,0。即便如此,包含对话框的大小仍然保持不变,因此结果是右侧和底部的一些控件要么被剪切,要么根本不可见。

我们只在两个地方使用属性表,对于有此问题的客户,这两个实例都受到相同的影响。这种情况只发生在属性表中,而不发生在普通对话框中。

资源在.rc文件中定义,如:

[DLG_PREF7 DIALOG  10, 91, 300, 179
STYLE DS_ABSALIGN | DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Font"
FONT 8, "MS Sans Serif"
BEGIN
LTEXT           "Fixed-width font",79,7,7,119,12,SS_CENTERIMAGE
COMBOBOX        80,131,7,126,300,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
LTEXT           "Proportional font",87,7,25,119,12,SS_CENTERIMAGE
COMBOBOX        88,131,25,126,300,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
LTEXT           "Font size",-1,7,43,119,12,SS_CENTERIMAGE
EDITTEXT        705,131,43,20,12,ES_RIGHT | ES_NUMBER | WS_GROUP | WS_TABSTOP 
END][1]

一张照片胜过千言万语,但我不确定我的照片是不是"拍的"。如果没有,想象一下你是否可以使用ctrl/鼠标滚轮来增加这个对话框内容的大小。

我被难住了。有人知道可能发生的事情吗?

感谢您的评论。现在问题解决了。事实证明,问题是我明确使用了"MS Sans Serif"字体。显然,一些外国系统不包括这种字体,当这种情况发生时,Windows会替换系统字体,因为系统字体没有相同的字体特征,也不符合对话框的定义大小。

解决方案是用"Microsoft Sans Serif"代替,现在一切都很好。