java работает с таблицей форм - PullRequest
0 голосов
/ 07 мая 2011

Эй, мне нужна твоя помощь по поводу кода ниже . Я использую NetBeans, у меня есть пользовательский интерфейс, и мне нужно обновить существующую панель прокрутки с помощью таблицы, которую я создал динамически, но я не могу найти какой-либо способ сделать это за последние 3 дня. Не могли бы вы помочь мне на этом этапе?

dbcon.Connect();

String[] columnNames = {"First Name",
            "Last Name",
            "Sport",
            "# of Years",
            "Vegetarian"};
Object[][] data = {
    {"Kathy", "Smith",
     "Snowboarding", new Integer(5), new Boolean(false)},
    {"John", "Doe",
     "Rowing", new Integer(3), new Boolean(true)},
    {"Sue", "Black",
     "Knitting", new Integer(2), new Boolean(false)},
    {"Jane", "White",
     "Speed reading", new Integer(20), new Boolean(true)},
    {"Joe", "Brown",
     "Pool", new Integer(10), new Boolean(false)}};

 DefaultTableModel dtm = new DefaultTableModel(data,columnNames);
 JTable table = new JTable(dtm);
 // i created this table and can't update an existing Jscrollpane :(

точно мне нужен способ пополнить таблицу перекрасить новую таблицу в существующую панель прокрутки

Есть идеи?

Ответы [ 2 ]

2 голосов
/ 07 мая 2011

Вы пытались просмотреть документацию JScrollPane ?Я думаю, что делать что-то вроде этого должно работать:

DefaultTableModel dtm = new DefaultTableModel(data,columnNames);
table = new JTable(dtm);
JScrollPane scrollPane = new JScrollPane(table);
this.add(scrollPane, BorderLayout.CENTER);
1 голос
/ 08 мая 2011

Если я правильно прочитал вопрос, постер хочет обновить «существующую» область прокрутки.

Если это так, то вы просто делаете:

scrollPane.setViewportView( table );

Однако, если у вас уже есть таблица в области прокрутки, вам даже не нужно создавать новый JTable. Все, что вам нужно сделать, это обновить модель таблицы:

DefaultTableModel model = new DefaultTableModel(...);
table.setModel( model ):
...