gpt4 book ai didi

Java FlowLayout 删除第一个组件前面的水平空间

转载 作者:行者123 更新时间:2023-12-01 22:13:59 25 4
gpt4 key购买 nike

是否有更简单的方法来删除 FlowLayout 中第一个组件前面的水平空间?

这基本上就是我的代码的样子:

JPanel panel = new JPanel(new FlowLayout(FlowLayout.LEFT, 5, 0));
JLabel label1 = new JLabel("Hello");
JLabel label2 = new JLabel("Goodbye");
panel.add(label1);
panel.add(label2);

我看到的是 label1 和 label2 之间有一个水平间隙,但是,它还在 label1 前面添加了间距。我当前的解决方案是删除水平间隙并向 label2 添加 EmptyBorder 来解决此问题。

但是对于有很多组件的情况,我想知道是否有更简单、更有效的方法来完成如此简单的事情?

最佳答案

您可以使用水平BoxLayout:

panel.add( label1 );
panel.add( Box.createHorizontalStrut(5) );
panel.add( label2 );

或者您可以将 EmptyBorder 添加到面板,而不是标签:

panel.setBorder( BorderFactory.createEmptyBorder(0, -5, 0, 0) );

关于Java FlowLayout 删除第一个组件前面的水平空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28221743/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com