2011-06-16 138 views
2

我有两个屏幕使用相同的分辨率(1280x1024),但其中一个屏幕的刷新率为59.9 HZ,另一个屏幕的刷新率为75 HZ。我有一个使用Java开发的完整软件(并在OpenSuse 10.0下运行)。问题是这个软件中的Jtables在两个屏幕上的显示都不同:它们在一个屏幕上完美显示,而在另一个屏幕上,列的宽度不断增加,这隐藏了一些列。 我能够从两个屏幕中获得的另一个区别是,当我使用Toolkit.getDefaultToolkit()。getScreenResolution()时,它在“良好显示”屏幕上给出了93,在“坏显示器”屏幕上给出了95。相同屏幕分辨率下的Java布局差异

我的问题是,为什么两个屏幕使用相同的分辨率,以不同的方式显示GUI组件?它是否需要对刷新率或屏幕的DPI进行任何操作?

+0

也许在每个屏幕上发布应用程序的屏幕截图? – 2011-06-16 12:14:26

+0

它们在同一张显卡上吗? – Bit 2011-06-16 12:17:31

+0

是的,他们都使用英特尔公司945G集成图形控制器 – 2011-06-16 12:21:35

回答

3

检查您的可用字体。逻辑字体名称(serif,sansserif,等宽字体,对话框,dialoginput)是根据您计算机上可用的字体创建的。

Font javadoc

典型地,每个逻辑字体名称映射到多个物理字体以覆盖大范围的字符。

因此,如果可用的字体不匹配,Java可能会替换不同的物理字体字符。这可能会导致你正在描述的行为。

+0

在所有方面尊重你的人,这与多核GPU上的多重播放显示器没有任何关系:-) – mKorbel 2011-06-16 15:47:19

+0

啊,我不知道这是一个单一的系统。我认为这是两个系统之间的区别。我很抱歉。 – 2011-06-16 20:13:36

+0

用于自我反射+1 – mKorbel 2011-06-16 20:46:59