Если пользователь выбирает элемент с его индексом 1 и меняет его с «123» на «abcd». Как я могу установить «abcd» вместо «123» (в NetBeans)? Также как я могу удалить элемент навсегда?Редактируемый JComboBox
ответ
Попробуйте следующее. Когда пользователь меняет значение и нажимает [ENTER], старое значение удаляется, а новый добавляется.
Если вам нужно заменить значение в том же положении, вам придется предоставить свою собственную модель, которая поддерживает добавление значений в определенную позицию.
final DefaultComboBoxModel model = new DefaultComboBoxModel(new String[] {"Red", "Green", "Blue"});
comboBox = new JComboBox(model);
comboBox.setEditable(true);
comboBox.addActionListener(new ActionListener() {
private int selectedIndex = -1;
@Override
public void actionPerformed(ActionEvent e) {
int index = comboBox.getSelectedIndex();
if(index >= 0) {
selectedIndex = index;
}
else if("comboBoxEdited".equals(e.getActionCommand())) {
Object newValue = model.getSelectedItem();
model.removeElementAt(selectedIndex);
model.addElement(newValue);
comboBox.setSelectedItem(newValue);
selectedIndex = model.getIndexOf(newValue);
}
}
});
comboBox.setSelectedIndex(0);
Ницца! но с вашим кодом я могу удалить один элемент не более того, почему? – Johanna
Вы можете самостоятельно отлаживать код, чтобы узнать, что происходит! – camickr
Не уверен, когда вы хотите удалить строку ... Если вы хотите удалить ее, когда пользователь очистит вход, проверьте это до повторного добавления элемента –
Читать учебник How to Use Combo Boxes
Редактируемый выпадающий, до и после того, как кнопку со стрелкой нажата
См: Использование раздел Редактирования Combo Box ,
Отрывок с этой страницы:
JComboBox patternList = new JComboBox(patternExamples);
patternList.setEditable(true);
patternList.addActionListener(this);
- 1. Невозможно написать редактируемый JComboBox
- 2. JComboBox: Не редактируемый, но печатаемый
- 3. Редактируемый JCombobox и прослушиватель клавиш
- 4. Редактируемый JComboBox Отсутствие выбора по умолчанию
- 5. Java: редактируемый JCombobox в JOptionPane inputDialog?
- 6. Редактируемый JComboBox стрельба ActionListener при потере фокуса
- 7. Редактируемый JComboBox с другим текстом в поле редактирования
- 8. Редактируемый Jcombobox не заполняет данные из базы данных
- 9. Как добавить редактируемый JComboBox и Button на одном кадре.?
- 10. Многострочный редактируемый фрагмент текста: редактируемый UILabel?
- 11. Редактируемый QTabWidget
- 12. Редактируемый JTable
- 13. Редактируемый CATextLayer?
- 14. Редактируемый UITableView
- 15. Редактируемый JComboBox: получить текущее значение при использовании ярлыков для запуска действий
- 16. Редактируемый JComboBox в Java 8 не переадресовывает клавишу ввода ключа по умолчанию
- 17. Редактируемый JComboBox: определение того, нажата ли кнопка, игнорируя ее при выпадающем выборе?
- 18. Редактируемый JCombobox избегает нескольких DocumentEvents, когда выбор изменяется из всплывающего окна
- 19. Не редактируемые JComboBox Border
- 20. JComboBox каскадом
- 21. JComboBox getSelectedItem
- 22. JComboBox Filter
- 23. JComboBox Ошибка
- 24. Невидимый JComboBox
- 25. Экземпляр JComboBox
- 26. Swing Jcombobox
- 27. Обновить JComboBox
- 28. JComboBox алгоритм
- 29. ItemChangeListener JComboBox
- 30. JComboBox ширина
Что вы имеете в виду множества "ABCD". Вы хотите изменить значение в своей модели? Если да, то какую модель вы используете? –
Я имею в виду, что я хочу изменить «123» на «abcd», навсегда. также я использую модель по умолчанию и с setEditable (true) Я делаю это как редактируемый ComboBox – Johanna
Учитывая, что вы не читаете предложения, приведенные в других ваших сообщениях, казалось бы, пустая трата времени, чтобы сделать предложение в этой публикации. – camickr