我正在使用Java Swing构建一个小应用程序。该应用程序将在几台不同的计算机上使用。我正在使用GridLayout。问题是窗口不可调,因为我这样显示gui:
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
addComponentsToPane(getContentPane());
pack();
setVisible(true);
我知道pack()导致了这个问题。该程序在我的计算机上工作正常,但窗口相对较高。在其他一些计算机上,底部被切断,因此用户无法访问某些功能。什么是最好的解决方案?我想到了几种方法,但它们似乎都不是最优的:
不幸的是,我希望保持窗口的结构,因为它看起来不错而且很直观。我已经有一些选择器的滚动条,所以我认为为窗口添加一个滚动条看起来会非常混乱并增加混乱。
我将不胜感激任何建议。感谢。
答案 0 :(得分:1)
如果您不想添加滚动条,并且您不想重新排列小部件,那么剩下的唯一选项是
没有无数种方法。您决定的方法越多越不合适将限制解决关键问题的机会。在您的情况下,您有两种截然不同的屏幕布局,显而易见的解决方案是检测屏幕参数,并选择两种不同布局中的一种,每种布局都看起来很好看。
答案 1 :(得分:1)
窗口中太多的控件很无聊。那么为什么不对控件进行分类并使用JTabbedPane将它们添加到不同的选项卡中?
答案 2 :(得分:0)
我认为这更合适。如果不希望这样,那么添加滚动窗格会更好。缩小控件可能不是那么有用