Почему BasicComboBoxRenderer устанавливает текст два раза, если текст не существует или пуст с помощью getPreferredSize(JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Почему BasicComboBoxRenderer устанавливает текст два раза, если текст не существует или пуст с помощью getPreferredSize(

Сообщение Anonymous »

Работая над чем-то, связанным с использованием этого класса, я нашел этот фрагмент кода:

Код: Выделить всё

public Dimension getPreferredSize() {
Dimension size;
if (this.getText() == null || this.getText().isEmpty()) {
setText( " " );
size = super.getPreferredSize();
setText( "" );
}
else {
size = super.getPreferredSize();
}
return size;
}

Я понимаю, что этот класс является JLabel и может использовать метки для рендеринга.
Но почему инициализируется (в случае, если это не так) во время этого метода получения?
Разве не было бы разумнее просто сделать это в конструкторе?

Подробнее здесь: https://stackoverflow.com/questions/781 ... t-exist-or
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»