TextFields
包含Container
个,BoxLayout(BoxLayout.Y_AXIS)
,其布局为TextFields
。我希望这些setPreferredW
中的每一个都有自己的宽度。我尝试了setColumns
,TextFields
,但TextFields
的大小都相同,占据了剩下的所有行的宽度。
那么如何让每个或某些{{1}}在视觉上都有自己的宽度?
答案 0 :(得分:1)
BoxLayout总是在相对的AXIS上拉伸组件,因此文本字段将始终拉伸,而不管他们的首选W(除非你知道你在做什么,否则你必须永远不要弄乱这个值的另一个原因......)。
解决方案很简单,将文本字段嵌套在多个FlowLayout / BoxLayoutX容器中,并将容器逐个添加到框布局Y.容器将各自占据Y AXIS容器的整个宽度但是赢得的文本字段不占用所有空间。
答案 1 :(得分:1)
我找到了解决方案:我派生了TextField类,并在构造函数中设置了首选宽度值。
PS:我没有打电话给super();