使 2 个 JButton 大小相等
Posted
技术标签:
【中文标题】使 2 个 JButton 大小相等【英文标题】:Make 2 JButtons Equal in size 【发布时间】:2011-11-15 21:18:58 【问题描述】:我有两个JButton
s,带有文本“Ok”和“Cancel”。我正在使用GridBagLayout
将它们与JDialog
对齐。我已将锚点设置为GridBagConstraints.CENTER
。由于文本“Ok”和“Cancel”的字符数不同,因此按钮大小不同。如何正确对齐它们,以使它们中的每一个都具有相同的大小。我尝试了以下但无济于事。
okayButton.setSize(cancelButton.getSize());
【问题讨论】:
只是为了强调:调整组件大小/定位组件是 LayoutManager 的工作(您已经使用过,很好!) - 应用程序代码中的 setSize 已经(并且应该并且必须有:-) 没有效果 【参考方案1】:而不是okayButton.setSize(cancelButton.getSize());
使用okayButton.setPreferredSize(cancelButton.getPreferredSize());
【讨论】:
-1 no ... 永远不要在应用程序代码中使用 setXXSize(出于某些原因,请参阅 ***.com/questions/7229226/…),而是使用像样的 LayoutManager 顺便问一下,我应该删除那些可能误导人们的答案吗?【参考方案2】:GridBaglayout 得到GridBagConstraints 并且在所有情况下都接受PreferredSize
here 和 here 示例
【讨论】:
【参考方案3】:尝试将填充设置为GridBagConstraints.BOTH
并赋予两个按钮相同的权重。
【讨论】:
以上是关于使 2 个 JButton 大小相等的主要内容,如果未能解决你的问题,请参考以下文章