Добавление в JTable - Java

Узнай цену своей работы

Формулировка задачи:

Есть модель таблицы
Листинг программы
  1. import java.util.ArrayList;
  2. import javax.swing.table.AbstractTableModel;
  3. public abstract class table extends AbstractTableModel {
  4. private int columnCount = 4;
  5. private ArrayList<String[]> dataArrayList;
  6. public table () {
  7. dataArrayList = new ArrayList<String[]> ();
  8. for (int i=0; i<dataArrayList.size();i++) {
  9. dataArrayList.add(new String[getColumnCount()]);
  10. }
  11. }
  12.  
  13. @Override
  14. public int getRowCount() {
  15. return dataArrayList.size();
  16. }
  17. @Override
  18. public String getColumnName(int columnIndex){
  19. switch(columnIndex) {
  20. case 0: return "1";
  21. case 1: return "2";
  22. case 2: return "3";
  23. case 3: return "4";
  24. }
  25. return "";
  26. }
  27. @Override
  28. public int getColumnCount() {
  29. return columnCount;
  30. }
  31. @Override
  32. public java.lang.Object getValueAt(int rowIndex, int columnIndex) {
  33. String [] rows = dataArrayList.get(rowIndex);
  34. return rows [columnIndex];
  35. }
  36. public void addDate(String[] row){
  37. String [] rowTable = new String[getColumnCount()];
  38. rowTable = row;
  39. dataArrayList.add(rowTable);
  40. }
  41. }
Как сделать в основном классе добавление строки в JTable по нажатию кнопки ?

Решение задачи: «Добавление в JTable»

textual
Листинг программы
  1. DefaultTableModel myModel = new DefaultTableModel();
  2. JTable myTable = new JTable(myModel);
  3. Vector newRow = new Vector();
  4. // Добавляем новую строку
  5. myModel.getDataVector().add(newRow);
  6. // Метод выравнивает добавленную строку по ширине таблицы и оповещает всех
  7. // слушателей о том что таблица изменилась.
  8. myModel.newRowsAdded(new TableModelEvent(myModel));

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.182 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут