首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MFC应用程序字体问题-对话框显示错误Win2k8

MFC应用程序字体问题-对话框显示错误Win2k8
EN

Stack Overflow用户
提问于 2013-05-16 13:41:08
回答 2查看 493关注 0票数 0

我在win2k3 citrix上运行的遗留应用程序即将迁移到win2k8 citrix。

在win2k8上测试时,我注意到在2k3上不明显的UI问题-按钮对于标签来说不够宽,文本字段被截断等。

我注意到Win2k3的默认字体是Tahoma,而2k8使用的是Segoe UI,不确定这是否是原因

它是一个受控的环境,只托管我的应用程序,所以更改windows UI设置比重新设计我所有的窗口和对话框更可取。

如何让我的应用程序在win2k8上看起来和在win2k3上一样?

下面是来自rc文件的我的登录对话框示例。在win2k8上,文本“请输入您的用户id”超过2行,隐藏在编辑框下面。

代码语言:javascript
复制
IDD_LOGON DIALOG DISCARDABLE  0, 0, 545, 361
STYLE WS_POPUP | WS_VISIBLE
FONT 8, "Arial"
BEGIN
    LTEXT           "Welcome",IDC_USER_LOGON_HEAD1,368,192,140,19
    LTEXT           "Please enter your User ID",IDC_USER_LOGON_HEAD2,368,220,
                    118,14
    EDITTEXT        IDC_USER_LOGON_USER,368,236,81,12,ES_AUTOHSCROLL
    LTEXT           "and your password",IDC_USER_LOGON_HEAD3,368,260,118,14
    EDITTEXT        IDC_USER_LOGON_PASSWORD,368,276,81,12,ES_PASSWORD | 
                    ES_AUTOHSCROLL
    PUSHBUTTON      "OK",IDOK,368,316,50,14,WS_DISABLED
    PUSHBUTTON      "E&xit",IDCANCEL,424,316,50,14
END

编辑:

我做了一些进一步的调查,拍摄了上面对话框的一些屏幕截图。看起来问题不在于文本的大小错误--对话框上的控件太小了!

例如:

对于控制IDC_USER_LOGON_PASSWORD,它是81个对话单元×12个对话单元。

它应该呈现为142 px x 24 px

取而代之的是,它被渲染得太小,为122px x 21px

这有没有给任何人任何线索?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-20 09:42:41

根据Hans的建议,问题出在DPI设置上。Win2k8系统的DPI值为96,win2k3系统的DPI值为120。

将win2k8上的DPI设置为120可以解决通过远程桌面登录时的问题,但是仍然存在一些问题,使citrix设置遵守此DPI设置,但我现在是在正确的轨道上。

谢谢大家

票数 0
EN

Stack Overflow用户

发布于 2013-05-16 14:19:57

看起来你已经安装了"Desktop Experience"。你可以卸载它,服务器将在“经典”模式下运行。

此外,你还可以玩“个性化设置”。打开控制面板\外观和个性化\显示并选择“使文本和其他项目变大或变小”。在那里您可以设置每个元素的大小。我建议您将所有内容都设置为100%。

此外,如果这不起作用,您可以在Win2k8中更改应用程序的兼容性,使其以Win2k3身份运行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16579737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档