挫折胜出';在java上执行setOpaque(true)后仍不能工作

挫折胜出';在java上执行setOpaque(true)后仍不能工作,java,swing,jbutton,Java,Swing,Jbutton,我的代码是这样的 class ActionPanel extends JPanel{ private JButton calculate; private JLabel sup; private Border border; public ActionPanel(){ calculate = new JButton("Calculate Bill"); calculate.setOpaque(true); calcu

我的代码是这样的

class ActionPanel extends JPanel{
    private JButton calculate;
    private JLabel sup;
    private Border border;
    public ActionPanel(){
        calculate = new JButton("Calculate Bill");
        calculate.setOpaque(true);
        calculate.setBackground(Color.BLUE);
        sup = new JLabel("Total Cost", SwingConstants.CENTER);
        setLayout(new GridLayout(0,1));
        add(sup);
        add(calculate);
        }    
}

这将形成JFrame的一部分,但是当它在运行程序后显示时,JButton将不会改变颜色,除非我这样做(false);但是按钮看起来很奇怪,因为它没有边框,我该怎么做才能使JButton改变颜色,但不会丢失边框

在边框设置为可见后,是否将操作面板添加到边框中


如果是这样,则必须在框架上调用重新绘制和(重新)验证以使更改可见。希望这有帮助,提供更多的代码将有助于回答问题。

若要更快获得更好的帮助,请发布一条。这部分代码应该可以工作。在别处寻找错误。这里提到了一些替代方案。