【发布时间】:2011-07-16 18:01:13
【问题描述】:
我的 Java swing 应用程序有一个格式问题。它应该相当简单,但我很难找到任何帮助(每个主题似乎都是关于 删除 JPanel 中的任何默认填充)。
我的各种 JPanel 中的文本拥抱侧面和顶部,触摸彩色边框:如何添加填充?
【问题讨论】:
标签: java swing formatting jpanel
我的 Java swing 应用程序有一个格式问题。它应该相当简单,但我很难找到任何帮助(每个主题似乎都是关于 删除 JPanel 中的任何默认填充)。
我的各种 JPanel 中的文本拥抱侧面和顶部,触摸彩色边框:如何添加填充?
【问题讨论】:
标签: java swing formatting jpanel
在您的 JPanel 周围设置一个 EmptyBorder。
示例:
JPanel p =new JPanel();
p.setBorder(new EmptyBorder(10, 10, 10, 10));
【讨论】:
p.setBorder(BorderFactory.createCompoundBorder(new EmptyBorder(10, 10, 10, 10), new EtchedBorder()));
当您需要在 JPanel 内进行填充时,通常您使用正在使用的布局管理器添加填充。在某些情况下,您可以只扩展JPanel 的边框。
【讨论】:
为了演示,我假设您的 JPanel 包含 JTextField。
这些组件提供了JTextComponent#setMargin() 方法,这似乎是您正在寻找的。p>
如果您要在文本周围寻找任意大小的空白边框,请使用EmptyBorder
【讨论】:
JPanel p=new JPanel();
GridBagLayout layout=new GridBagLayout();
p.setLayout(layout);
GridBagConstraints gbc = new GridBagConstraints();
gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.gridx=0;
gbc.gridy=0;
p2.add("",gbc);
【讨论】: