将默认值设置为自定义java swing组件属性

时间:2020-08-10 09:57:07

标签: java swing

我正在尝试创建自定义按钮。

public class MyButton extends JButton implements PropertyChangeListener {

}

,我想在此按钮中为某些属性设置默认值。即如果用户未将任何值设置为 foreground_color ,我想将其设置为Color.RED

如果用户将任何颜色设置为 foreground_color ,则按钮应忽略默认颜色。

有可能吗?

1 个答案:

答案 0 :(得分:0)

是的,您可以将一个构造函数添加到您的MyButton类中,以设置默认值。当然这些可以稍后用myButton.setForeground()等覆盖。

public MyButton() {
    super();
    setForeground(Color.RED);
    // ... 
}

如果您想保留JButton中的任何特殊构造函数(例如,使用一个字符串作为按钮文本的构造函数),您当然可以对其进行修改或添加另一个:

public MyButton(String text) {
    super(text);
    setDefaults();
}

private void setDefaults() {
    setForeground(Color.RED);
    // ... more defaults ...
}
相关问题