jButton在更改文本标签时调整大小

时间:2011-06-16 15:48:43

标签: java swing layout jbutton

我是java GUI的新手,并且一直在使用netbeans来帮助我。

我已经设置了一个jButton,当点击它的标签时会发生变化。我的问题是,尽管设置了最大和最小尺寸以及设置preferredSize方法,按钮的大小仍然保持固定。我需要更改布局吗?我应该通过并将每个按钮放在面板上还是有更简单的方法?

我觉得这应该是一个容易解决的问题,但我已经在这里待了一个多小时了。我很欣赏任何想法。感谢

2 个答案:

答案 0 :(得分:3)

  1. 如果您是Swing的新手,请不要使用GUI构建器,因为您会遇到类似这样的各种问题。
  2. 听起来您的布局正在阻止调整大小。确保使用正确的布局管理器来实现您的设计外观。仔细检查您为布局设置的任何约束。您可以尝试使用不同的布局管理器(如FlowLayout)来检查以确保您的setPreferredSize()调用正常工作等。

答案 1 :(得分:1)

有很多方法可以解决这个问题:

  1. 干净简单的方法是创建image icons for the different buttons,使它们的大小相同。这可以让你完全控制它们的样子。

  2. 执行此操作的快速方法是添加空格,直到按钮大小相同。这并不完美,因为JButons上出现的字体通常不是固定宽度。

  3. '正确'的Swing方式是使用自定义布局。例如,如果您使用GridBagLayout来排列组件,并将JButton的'weightx'和'weighty'设置为1.0,那么它将占用尽可能多的空间,这将使其保持相同的大小。