Java - TableModel и DefaultTableModel - PullRequest
       22

Java - TableModel и DefaultTableModel

1 голос
/ 18 марта 2012

Я потратил довольно много времени, пытаясь найти способ добавления новой строки в JTable, первоначально ища методы для следующей модели:

TableModel model = new DefaultTableModel(data, tabs);

Однако, некоторые из них приводят к быстрому поискумне найти, что метод addRow был внутри класса DefaultTableModel.Таким образом, изменение его на следующее было успешным:

DefaultTableModel model = new DefaultTableModel(data, tabs);

Однако я создал много успешных программ, в которых у меня был предварительно собранный массив с использованием TabelModel, поэтому я немного запутался, почему яНужно переключиться на DefaultTableModel для достижения этого решения, и если есть причина и цель для каждого?Например: можно ли просто использовать TabelModel с предварительно созданным массивом и почему моя реализация TableModel, описанная выше, не содержит методов для добавления новых данных?

Спасибо!

1 Ответ

4 голосов
/ 18 марта 2012

Если вы должны использовать свою собственную коллекцию в качестве ядра для своей табличной модели, пусть будет так, но тогда вы захотите расширить AbstractTableModel и создать свой собственный метод addRow, который добавляет данные в модель, и (воткритическая часть), что запускает соответствующий метод уведомления об изменении данных из AbstractTableModel.

...