我正在嘗試將多個(gè)選項(xiàng)重命名為相同的值。如果已經(jīng)有一個(gè)選項(xiàng)具有我正在嘗試將另一個(gè)重命名為的值,則什么也不會(huì)發(fā)生。這是我當(dāng)前的代碼:package main.cache;import java.awt.EventQueue;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.DefaultComboBoxModel;import javax.swing.JComboBox;import javax.swing.JFrame;public class ComboBox { private JFrame frame; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { ComboBox window = new ComboBox(); window.frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the application. */ public ComboBox() { initialize(); } /** * Initialize the contents of the frame. */ private void initialize() { frame = new JFrame(); frame.setBounds(100, 100, 450, 300); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().setLayout(null); String[] values = new String[] { "null", "null", "parameter3" }; final DefaultComboBoxModel<Object> models = new DefaultComboBoxModel<Object>(values); JComboBox<Object> comboBox = new JComboBox<Object>(models); comboBox.setBounds(130, 82, 168, 40); frame.getContentPane().add(comboBox);例如在這里,我有 3 個(gè)選項(xiàng)“null”、“null”、“parameter3”。假設(shè)我也想將第二個(gè)選項(xiàng)編輯為 parameter3。目前,沒(méi)有任何反應(yīng)。
1 回答

翻閱古今
TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超5個(gè)贊
出現(xiàn)此問(wèn)題是因?yàn)?JComboBox 選擇了第一次出現(xiàn)的字符串。因此,唯一的解決方案是使用一個(gè)名為 Element 的自定義類并覆蓋 toString,然后不向 JComboBox 添加原始字符串,而是添加元素。
添加回答
舉報(bào)
0/150
提交
取消