我有两个使用相同分辨率(1280x1024)的屏幕,但其中一个的刷新率为59.9 HZ,另一个的刷新率为75 HZ。我有一个完整的软件,它是用Java开发的(在OpenSuse 10.0下运行)。问题是这个软件中的Jtable在两个屏幕上的显示是不同的:它们在一个屏幕上完美地显示,而在另一个屏幕上,列的宽度在增加,这隐藏了一些列。我能够从两个屏幕上得到的另一个区别是,当我使用Toolkit.getDefaultToolkit().getScreenResolution(),时,在“良好显示”屏幕上显示93,在“显示不良”屏幕上显示95。
我的问题是,为什么使用相同分辨率的两个屏幕会以不同的方式显示GUI组件?它是否必须与刷新率或屏幕的DPI有关?
发布于 2011-06-16 22:40:29
检查可用的字体。逻辑字体名称(serif、sansserif、monospaced、dialog、dialoginput)是从机器上可用的字体创建的。
根据Font javadoc
因此,如果可用的字体不匹配,Java可能会替换不同的物理字体字符。这可能会导致您所描述的行为。
https://stackoverflow.com/questions/6371559
复制相似问题