Java 钮扣颜色

Java 钮扣颜色,java,jpanel,jbutton,Java,Jpanel,Jbutton,在回顾了许多以前的StackOverflow帖子之后,我仍然无法将我的JButton设置为黑色而不是默认颜色。下面是我的按钮的外观: 这是我的代码: public void setStartButton() { JPanel panel = this.jPanel1; panel.setLayout(null); JButton button = new JButton("START"); // size and location of start but

在回顾了许多以前的StackOverflow帖子之后,我仍然无法将我的JButton设置为黑色而不是默认颜色。下面是我的按钮的外观:

这是我的代码:

public void setStartButton() {

    JPanel panel = this.jPanel1;
    panel.setLayout(null);

    JButton button = new JButton("START");

    // size and location of start button
    int res = java.awt.Toolkit.getDefaultToolkit().getScreenResolution();
    int length = (int) Math.floor(10.0*res/25.4); // side lengths of square button
    int offset = length/2; // because button should be centered...but its x and y location are given by its upper left hand corner
    button.setBounds(centerX-offset, centerY-offset, length, length);

    // color of start button
    button.setBackground(BLACK);
    button.setOpaque(true);
    button.setContentAreaFilled(false);

    // font
    button.setFont(new Font("Arial", Font.PLAIN, 8));

    button.setVisible(true);
    panel.add(button);

}
顺便说一句,当我将
setContentAreaFilled
更改为
true
时,没有什么区别

我知道确实调用了该函数,因为我的按钮的位置和字体信息工作正常


任何帮助都将不胜感激!谢谢

A
JButton
由一系列层组成,包括
内容
边框
焦点
层。根据您尝试执行的操作,您可能需要删除所有这些操作,例如


<>我也强烈鼓励您考虑使用适当的布局管理器,并使用它的属性和<代码> JButton <代码>来生成所需的填充物,这些将与字体度量一起工作,这些字体度量在系统之间往往是不同的。要为按钮生成合适的大小,请将黑色更改为Color.BLACK。还要确保导入java.awt.Color我已经导入了
导入静态java.awt.Color.BLACK,所以应该已经工作了,对吗?并且认真考虑使用合适的布局管理器。我不相信我可以在这里做这件事,因为我必须在画布上的不同坐标上画按钮。
public class TestPane extends JPanel {

    public TestPane() {
        setLayout(new GridBagLayout());
        setStartButton();
    }

    public void setStartButton() {

        JButton button = new JButton("START");
        button.setMargin(new Insets(20, 20, 20, 20));

        // color of start button
        button.setOpaque(true);
        button.setContentAreaFilled(true);
        button.setBorderPainted(false);
        button.setFocusPainted(false);
        button.setBackground(BLACK);
        button.setForeground(WHITE);

        // font
        button.setFont(new Font("Arial", Font.PLAIN, 8));
        add(button);

    }

}