0

我正在用 JAVA 编程,我的操作系统是 MAC。我正在尝试设置我的 JButtons 的 setForeground 甚至 setBackground,但没有任何进展。我已经添加了:

button.setOpaque(true); 
button.setBorderPainted(false);

但是,仍然没有任何变化!如何更改 JButton 的颜色?

这是我的代码:

    public class New_button extends JButton{
    String up = new String("<html><font color=BLACK>^<size=50></font></html>");
    String down = new String("<html><font color=BLACK>v<size=50></font></html>");
    double value;
    int foldChange;

    public New_button(double val, int foldChan) {
        value = val;
        foldChange = foldChan;
        this.setSize(30, 30);
        this.setFont(this.getFont().deriveFont(50.0f));
        this.setBorder(null);
    }

    public void changeColor(double value){
         try {
                UIManager.setLookAndFeel( UIManager.getCrossPlatformLookAndFeelClassName() );
             } catch (Exception e) {
                        e.printStackTrace();
             }
        if(value > 0.05){
            this.setForeground(Color.YELLOW);
            this.setOpaque(true);
            this.setBorderPainted(false);

        }
        else{
            this.setForeground(Color.RED);
            this.setOpaque(true);
            this.setBorderPainted(false);
        }
    }

    public void changeLable(int foldChange){
        if(foldChange == 1)
            this.setText(up);
        else
            this.setText(down);
    }    
}

谢谢

4

1 回答 1

0

检查这种方式:

JButton button = new JButton("test");
button.setBackground(Color.RED);
button.setOpaque(true);

资源

于 2013-09-09T13:09:37.817 回答