Заполните JTable, используя один объект на строку - PullRequest
3 голосов
/ 07 марта 2011

Я уверен, что это возможно, но мне не удается найти соответствующую документацию или простой пример для этой ситуации.

Например, скажем, у меня есть такой объект:

public class Person {
    private final String name;
    private final int age;
    private final String address;

    // Constructor, Getters and Setters
}

Теперь я бы хотел сделать что-то вроде этого:

myTableModel.addColumn("name");
myTableModel.addColumn("age");
myTableModel.addColumn("address");
myJTable.setModel(myTableModel);
for (Person person : people) {
    myTableModel.addRow(person);
}

И тогда каждый столбец будет использовать объект Person строки, чтобы «получить» соответствующую информацию для отображения.

1 Ответ

3 голосов
/ 07 марта 2011

Создайте пользовательскую TableModel.Вот пример, который я написал некоторое время назад:

http://puces -samples.svn.sourceforge.net / viewvc / puces-samples / tags / sessionstate-1.0 / sessionstate-suite / sessionstate-sample/src/blogspot/puce/sessionstate/sample/ParticipantTableModel.java?revision=13&view=markup

Вместо NbBundle вы также можете использовать ResourceBundle, если вы не строите свое приложение поверхплатформы NetBeans (хотя я рекомендую использовать RCP).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...