覆盖按钮背景

时间:2013-10-29 15:47:30

标签: java swing override jbutton

您好我尝试覆盖普通JButton的设置。除背景颜色外,每个设置都在变化。我做错了什么?

public class Button extends JButton {

    int red = 0;
    int green = 175;
    int blue = 206;

    Color kleur = new Color(red, green, blue);

    public Button(String text) {
        super(text);

        this.setBackground(kleur);
        this.setFont(new Font("Tahoma", Font.PLAIN, 22));
        this.setBorder(null);
        this.setFocusPainted(false);
        this.setContentAreaFilled(false);

    }

}

2 个答案:

答案 0 :(得分:1)

问题是我没有将opaque设置为true。

this.setOpaque(true);

答案 1 :(得分:1)

您在设置背景后立即将contentAreaFilled标记设置为falsesetContentAreaFilled(false),您告诉按钮它不应该paint它的内容区域。但是,如果您希望使用透明按钮,例如仅icon按钮,则应将其设置为false