如何更新DefaultListModel中项的字符串名称

时间:2014-01-23 15:40:16

标签: java swing jlist defaultlistmodel

我有一个JlistDefaultListModel包含来自XML的数据。

我希望能够更改Jlist中项目的名称。但是DefaultListModel没有更新方法。

因此,如果用户点击名称,则应编辑名称。

到目前为止,我想如果我获得该项目的位置并将其删除并使用新数据进行更新。但是,如果我用更新的名称更新它将被放在与旧的相同的位置或将被搞砸的东西?

我的代码:

private class EditName extends AbstractAction {
        public EditName() {
            putValue(NAME, "Change Name");
            putValue(SHORT_DESCRIPTION, "Some short description");
        }

        public void actionPerformed(ActionEvent e) {

             int x = objTypeJList.getSelectedIndex();
               String newName = JOptionPane.showInputDialog("New Name?");

                 if (x >= 0) {
                   String oldName = ReadXMLFile.getInstance().getModel().getElementAt(x).toString();
                   ReadXMLFile.getInstance().getModel().removeElementAt(x);
                   objTypeJList.setModel(ReadXMLFile.getInstance().getModel());
                }
                    // newText I wanna add into the the location I edit
            }

    }

1 个答案:

答案 0 :(得分:3)

  

“我希望能够更改Jlist中项目的名称。但 DefaultListModel没有更新方法。”

是什么让你这么说的?您是否仔细查看了docs

您认为这种方法有什么作用?

OR