Я пытаюсь создать новый класс JXLabel
, который наследует JLabel
.Разница в том, что этот расширенный класс назначит шрифт по умолчанию для метки.
Если я попробую это:
public class JXLabel extends JLabel {
Font f = new Font("Segoe UI", Font.PLAIN, 6);
public JXLabel() {
super();
this.setFont(f);
}
public JXLabel(Icon icon) {
super(icon);
this.setFont(f);
}
public JXLabel(Icon icon, int horizontalAlignment) {
super(icon, horizontalAlignment);
this.setFont(f);
}
public JXLabel(String text) {
super(text);
this.setFont(f);
}
public JXLabel(String text, Icon icon, int horizontalAlignment) {
super(text, icon, horizontalAlignment);
this.setFont(f);
}
public JXLabel(String text, int horizontalAlignment) {
super(text, horizontalAlignment);
this.setFont(f);
}
}
Я бы ожидал, что новые метки будут созданы как JXLabel дляесть этот шрифт по умолчанию, но его нет.
Если я создаю обычный JLabel и выполняю:
myLabel.setFont(new Font("Segoe UI", Font.PLAIN, 6));
Это работает.Любой совет о том, что не так в расширенном классе?Спасибо.