如何在Jbutton的边缘添加间隙?

时间:2011-07-29 06:16:05

标签: java swing user-interface layout jython

我想在我的JButton上留下默认边框,但也要在它们周围放置空白区域。我正在使用垂直BoxLayout

  • 我最初对边框一无所知,得到了我想要的单像素LineBorder s,但按钮都相互对接。

  • 然后我尝试button[i].setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5))。它不是在按钮周围添加空白区域,而是使按钮区域扩展。它还删除了LineBorder

  • 然后我尝试了:button[i].setBorder(BorderFactory.createCompoundBorder( BorderFactory.createEmptyBorder(5, 5, 5, 5), button.getBorder()))

这让我回到LineBorder,但不是在线外添加空格,而是将按钮区域扩展到线外!

我意识到我可以添加空白框来分隔我的按钮,但我也想在它们的两侧留出空间,这就是我想要添加EmptyBorder的原因。我是Swing的新手,所以也许有一个更好的方法,我不知道这样做:)

我正在使用Jython,但API应该与Java相同。

2 个答案:

答案 0 :(得分:5)

从概念上讲,您要添加的“空边框”实际上不是按钮的一部分(例如,它们不应该是可点击的。)

这实际上是布局问题,因此您应该检查您正在使用的布局管理器的文档。例如:

等等。

答案 1 :(得分:3)

我认为将按钮添加到面板并将空边框设置为面板会更简单。