2013-07-17 1 views
0

эта функция должна обновить мою JTable:освежающего JTable не показывает правильно данные

list = null; 
list = (ArrayList<String[]>) interface_engine.getData(); 
info = new String[list.size()][header.length]; 

Iterator it = list.iterator(); 

for (int i = 0; i < list.size(); i++) { 
    String[] current = (String[]) it.next(); 
    for (int j = 0; j < header.length; j++) { 
     info[i][j] = current[j]; 
    } 
} 
DefaultTableModel model = (DefaultTableModel) data_table.getModel(); 
model.addRow(info); 

, когда я называю его для добавления новой строки (GetData является удаленным методом для извлечения данных из БД), добавленного ряд он не отображается как строка, а ссылка на переменную (например, String @ 128dda ...). Где проблема?

ответ

3

добавленная строка не отображается как строка, а ссылка на переменную (например, String @ 128dda ...).

Прочитать API-интерфейс DefaultTableModel. Вы не можете добавить 2-мерный массив, используя метод addRow(). Вы можете добавлять только одну строку за раз.

Метод addRow() должен находиться внутри вашего цикла. Создайте одну строку данных, затем вызовите метод addRow().

Смежные вопросы