У меня JComboBox загружен объектами, которые имеют свой собственный метод toString. Этот combobox используется для выбора и возвращения этих объектов с помощью ActionListener в этом поле. Все работало нормально, пока я не решил добавить функцию для динамического добавления новых объектов, введя текст в это поле со списком и отправку с помощью кнопки «Отправить».Добавить типизированный текст в JComboBox как объект в этом JComboBox
Например,
мой класс:
public class SomeCustomClass {
private int id;
private String name;
public SomeCustomClass(String name){
this.name = name;
}
// getters and setters here
}
Когда я набираю текст «тестовый текст» в выпадающем списке и представить его, я хочу, чтобы иметь эту коробку с новым объектом «SomeCustomClass ", где name =" Some test text ".
Вариант 1 Создайте собственный стиль из метода String to SomeCustomClass. Является ли это возможным? Это хорошая идея?
Вариант 2 Найти способ поймать строку до запуска триггером ActionListener в combobox, создать новый объект SomeCustomClass с текстом и снова вернуть его в поле со списком. Но как? Я не нашел метод getString (getText) для JComboBox.
Вариант 3 Ваши идеи ...
Я вроде новичок в Java, может быть я что-то пропустил.
Как бы 'id' быть определена? До сих пор, как я вижу, все, что у вас есть, это текст – MadProgrammer
Я могу добавить некоторый конструктор по умолчанию 'id' на конструктор или просто оставить его с помощью' null' или добавить функцию для генерации 'id', если она не определена. – AndriiL