2015-11-09 3 views
0

Я хочу, чтобы этот код добавлял одну транзакцию в мою модель списка, когда я выбираю строку, но вместо этого добавляет две транзакции. Вот код:.Добавление выбранной строки Jtable в модель списка

table.getSelectionModel().addListSelectionListener(new ListSelectionListener(){ 
     @Override 
     public void valueChanged(ListSelectionEvent event) { 
      String name = (String) table.getValueAt(table.getSelectedRow(), 0); 
      Double price = Double.valueOf((String) table.getValueAt(table.getSelectedRow(), 1)); 
      String transaction = name + "   " + price; 
      myModel.addElement(transaction); 
      list.setModel(myModel); 

     } 
    }); 
+0

Dont знать причину вы используете 'ListSelectionListener' здесь в вашем коде. вы можете просто используйте кнопку с 'actionListener', а метод' actionPerformed' выполняет выше задачи. –

ответ

1

ListSelectionListener имеет «приспосабливаются» свойство», что вам нужно проверить, чтобы убедиться, что выбор закончил

Прочитайте раздел из свинга учебника по How to Write a ListSelectionListener более информация и рабочие примеры о том, как проверить это.

Или вы можете найти форум для других примеров использования ListSelectionListener.