JSplitPane在MS Windows和Linux之间的行为有所不同

时间:2013-02-07 19:14:42

标签: java linux windows swing

我有一个复杂的GUI,它使用拆分窗格将从顶部各个组件中显示的服务器读取的数据与包含有关数据有效性的状态消息的底部分开。

在MS Windows上运行时,当用户单击“重新加载”以刷新GUI的顶部时,数据将无缝加载。同知!

在Linux上运行时,当用户单击“重新加载”以刷新GUI的顶部时,拆分窗格的分隔符位置将设置为零,因此状态面板将覆盖整个面板。要查看用户需要在拆分窗格分隔符上单击一次的新数据。

解决方法是编码if(sp.getDividerLocation == 0)sp.setDividerLocation(sp.getLastDividerLocation);

但是当在Linux工作站上运行时,这会导致GUI的丑陋和不必要的“闪烁”。

任何人都知道更好的解决方案,因此Linux JRE swing在重新加载时不会将分隔符位置设置为零?

0 个答案:

没有答案