如何设置刚性区域的颜色

时间:2012-08-09 19:24:04

标签: java swing

我有一个背景颜色为黑色的JFrame。

setBackground(Color.BLACK);

我使用RigidArea作为过滤器:

Component rigidArea = Box.createRigidArea(new Dimension(0, 20));
rigidArea.setBackground(Color.BLACK);
getContentPane().add(rigidArea);

但这不起作用,因为rigidArea的颜色不是黑色。这有什么不对?

3 个答案:

答案 0 :(得分:2)

您是否尝试过将JFrame内容窗格的背景设置为黑色?

getContentPane().setBackground(Color.BLACK);

答案 1 :(得分:1)

docs中,createRigidArea创建一个始终为指定大小的不可见组件。

对于可见组件,您可以创建一个帮助方法来创建JPanel:

JComponent createVisibleComponent(Dimension d) {
    JPanel panel = new JPanel();
    panel.setMinimumSize(d);
    panel.setMaximumSize(d);
    panel.setPreferredSize(d);

    return panel;
}

答案 2 :(得分:0)

为什么不简单地添加JPanel并指定其尺寸?

JPanel pan = new JPanel();
pan.setBackground(Color.BLACK);
Dimension d = new Dimension(0,20);
pan.setSize(d);
pan.setPreferredSize(d);
pan.setMaximumSize(d);
pan.setMinimumSize(d);
getContentPane().add(pan);