在Border和JFrame之间留下差距

时间:2011-07-28 17:41:44

标签: java swing border

我的JPanel设置为BorderLayout。我在这个面板中添加了2 JPanels,一个南边和一个中心。在中心面板中,我添加了LowerBevelBorder。我发现我无法在主框架和边框之间留下间隙。我怎么做?这是我的panel1.setBorder(BorderFactory.createLoweredBevelBorder());

1 个答案:

答案 0 :(得分:5)

使用compound border允许您嵌套边框,而无需为此目的创建容器。 API可以帮助您进行设置。如,

int eb = 10;
panel1.setBorder(BorderFactory.createCompoundBorder(
    BorderFactory.createEmptyBorder(eb, eb, eb, eb), // outer border
    BorderFactory.createLoweredBevelBorder()));      // inner border

注意未经测试的代码。

另请注意,这取决于panel1是什么。如果它不是BorderLayout主要JPanel,那么最好的办法是设置BorderLayout的边框 - 使用JPanel作为EmptyBorder。