JButton的大小大于指定的大小

时间:2018-08-06 14:39:58

标签: java swing

我创建了一个jframe,并向其中添加了jbutton,并将jframe的大小设置为500,500,并将jbutton的大小设置为{ {1}}。但是,当我执行程序时,我的40,60覆盖了整个jbutton。一世 尝试了很多事情并调查了许多来源,但我找不到解决方案。

请帮助我解决此问题。

1 个答案:

答案 0 :(得分:-1)

您没有使用任何LayoutManagerJButton将尝试继承父容器的大小,因为JFrame的默认值为BorderLayout(特别是BorderLayout.CENTER)。您可以尝试使用

button.setPreferredSize(x, y);

但是我个人认为这还不够。在getContentPane上调用Jframe,然后在该contentPane容器上设置布局(我经常使用FlowLayout,因为它尊重setPreferredSize)。将您的JButton放入其中。

这始终是一个很好的起点:

https://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html

由于可以在UI元素上调用的方法因要为其分配给LayoutManager(作为其子级)的LayoutManager的不同而不同。有时是setMinimumSize,有时是setPreferredSize,有时是组合。