[英]Change button text without changing button size
我正在使用borderLayout将组件排列在JFrame和Box(BoxLayout.X_AXIS)中,以将按钮彼此相邻放置。 但这会带来两个问题:
我希望按钮具有相同的大小,但是会自动调整它们的大小以适合其中的文本(尤其是当我在运行时更改按钮内的文本时,这很烦人)
我希望按钮之间有一点间距(假设10像素)
使用borderLayout是否可以做到这一点,还是需要将setLayout设置为null? 如果是这样,这不会破坏按钮在框架中的原始位置吗? 还是仍将由borderLayout放置的Box处理?
几点建议
preferredSize
设置为合适的Dimension
值 maximumSize
和minimumSize
设置为相同的Dimension值 GridBagLayout
。 该布局管理器的优点在于,它可以让您详细控制布局的行为。 缺点是您通常需要在GridBagLayout上配置大量属性才能获得所需的行为。 我建议您先阅读GridBagLayout教程,因为它是相当复杂的野兽。 如果您希望它们具有相同的大小,则只需将按钮添加到GridLayout中,它们的大小将自动调整为最大的文本字符串。 您还可以指定组件之间的间隙。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.