我正在尝试创建自定义按钮。
public class MyButton extends JButton implements PropertyChangeListener {
}
,我想在此按钮中为某些属性设置默认值。即如果用户未将任何值设置为 foreground_color ,我想将其设置为Color.RED
如果用户将任何颜色设置为 foreground_color ,则按钮应忽略默认颜色。
有可能吗?
答案 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 ...
}