如何在JList中隐藏选择

时间:2016-09-24 16:01:34

标签: java jlist defaultlistmodel

我使用DefaultListmModel创建了几个JLists,因此我可以在这些JLists中添加,编辑和删除项目。 如何隐藏用户的选择? 因此,用户点击JList 1,通过双击项目来编辑索引2的值。所以现在在UI中选择索引值为2的项目并且它是蓝色的。 我的问题是:如何隐藏这个,所以在JList中编辑/添加项目之后,我必须做什么,所选项目不是蓝色,这样你就看不清楚了什么选择之前。

clearSelection()不起作用。

我的代码如下(我缩短了JOptionPane的内容和if else部分):

for (int i=0; i < StringArray.length; i++) {
        DefaultListModel<String> model = new DefaultListModel<String>();
        for (int j=0; j < StringArray[i].length; j++) {
            model.addElement(StringArray[i][j]);

            if((StringArray[i].length -1)== j) {
            listbox = new JList<String>(model);
            Panel.add(listbox);

            listbox.addMouseListener(new MouseAdapter() {
                     public void mouseClicked(MouseEvent e) {
                         if (e.getClickCount() == 2) {
                            int index = listbox.locationToIndex(e.getPoint());

                            Object[] options = {"Add", "Edit", "Delete"};
                            //.... JOptionPane
                            if (ADDING) {
                                String tmpAddValue = JOptionPane...
                                model.addElement(tmpAddValue);
                            }
                            else if (EDITING) {
                                String tmpValue = JOptionPane...
                                model.setElementAt(tmpValue, index);
                            }
                            else if (DELETING) {
                                model.removeElementAt(index);
                            }
                            else {
                                System.out.println("No Button pushed");
                            }
                            listbox.clearSelection();
                       }      

                  }
            });
        }
    }

由于

0 个答案:

没有答案