TextField 的 BoxLayout 左边距

BoxLayout left margin for TextField

我正在使用 BoxLayout,并且有 2 个 JTextField。我需要为它们添加一些边距选项,因为它们太靠近 window 边界。

代码:

JPanel top = new JPanel();
top.setLayout(new BoxLayout(top, BoxLayout.Y_AXIS));
top.add(new JLabel("Recipient:"));        
recipient.setMaximumSize( recipient.getPreferredSize() );
top.add(recipient);
top.add(new JLabel("Subject:"));
subject.setMaximumSize( subject.getPreferredSize() );
top.add(subject);
top.add(new JLabel("Message:"));
add("North", top);

如果我添加 Horizo​​ntalStrut,它只会影响 Labels,而不会影响 TextFields。谢谢指教!

在面板中添加一个Border

JPanel top = new JPanel();
top.setBorder( BorderFactory.createEmptyBorder(....) );

阅读有关 How to use Borders 的 Swing 教程部分,了解更多信息和示例。