Java:无法让 JButton 水平紧贴文本

标签 java swing width jbutton

我有一个 JButton,它比我放入其中的文本宽得多。我对此进行了研究,并且一直在寻找使用 Jbutton.setMargin(new Insets(0,0,0,0)); 的建议,但这似乎行不通。此外,setMaximumSize 没有任何效果,但如果我也设置了最小尺寸,它确实会改变按钮的尺寸。但我不想手动设置大小。我只是想让它不那么宽。我错过了什么?

这是我创建按钮的代码:

plusminus = new JButton("+");
plusminus.setMargin(new Insets(0,0,0,0));

这是它的样子:

plus button

谢谢。

最佳答案

I'm manually making my GUI. In this case, the layout is GroupLayout

那么这可能是您的问题的一部分。 JButton 的大小受容纳它的容器布局的限制。如果您绝对需要使用 GroupLayout(顺便说一句我讨厌),一种可能的解决方案是将您的 JButton 放在使用 FlowLayout 的 JPanel 或其他允许灵活大小的组件的布局中,并将此 JPanel 放入当前的容器中按住你的按钮。如果您的按钮比 JPanel 大,请当心。

关于Java:无法让 JButton 水平紧贴文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7479038/

相关文章:

java - 实现 Remove 方法 Java

java - 将文本文件中的随机行读取到 JLabel 中

Java 为什么我需要最小化然后重新加载?

css - 为较小的分辨率/移动设备填充内容 100% 宽度

java - 修复覆盖错误

java - 媒体播放器 prepare() 方法上的 IllegalStateException

java - 尝试用Java创建一个堆栈计算器

java - boxlayout中有 'top to bottom'和 'right to left'吗?

C# - Silverlight - 如何将一个元素的宽度绑定(bind)到另一个元素,使其成为单向绑定(bind)?

css - 将像素转换为大显示器的百分比