亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JCombobox 無法將多個選項重命名為相同的值

JCombobox 無法將多個選項重命名為相同的值

烙印99 2023-06-08 19:43:51
我正在嘗試將多個選項重命名為相同的值。如果已經有一個選項具有我正在嘗試將另一個重命名為的值,則什么也不會發生。這是我當前的代碼: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 個選項“null”、“null”、“parameter3”。假設我也想將第二個選項編輯為 parameter3。目前,沒有任何反應。
查看完整描述

1 回答

?
翻閱古今

TA貢獻1780條經驗 獲得超5個贊

出現此問題是因為 JComboBox 選擇了第一次出現的字符串。因此,唯一的解決方案是使用一個名為 Element 的自定義類并覆蓋 toString,然后不向 JComboBox 添加原始字符串,而是添加元素。



查看完整回答
反對 回復 2023-06-08
  • 1 回答
  • 0 關注
  • 158 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號