我使用GridBagLayout将我的游戏菜单置于jframe中心,并且它在我的固定计算机上工作正常,屏幕分辨率为1920x1080但是当我使用完全相同的代码但在我的笔记本电脑上菜单从未出现。< / p>
这是将菜单添加到jframe的代码:
frame.setLayout(new GridBagLayout());
if(menu.checkGame() == false){
menu.setLayout(null);
menu.setBackground(new Color(0, 0, 0, 0));
menu.setPreferredSize(new Dimension(1400, 1080));
load.setBackground(true);
frame.add(menu, new GridBagConstraints());
}
为什么它不能以较低的分辨率工作?如何解决这个问题?
答案 0 :(得分:1)
每当GridBagLayout没有足够的空间容纳每个子组件的首选大小时,它会将每个组件设置为其最小大小。尝试添加menu.setMinimumSize(menu.getPreferredSize())
。