Добавить строку в jTable - Java
Формулировка задачи:
Как я понял jTable - аналог DataGridView в C# (Если я не прав, то скажите мне что не так). Как добавит туда строку?
Господин Шилдт написал что нужно использовать оператор final. Но уж как-то больно непонятно это смотрится в коде. Есть ли другой оператор? Опять же какой-нибудь аналог DataGridView1.AddRow().
Сразу же беда. Вторую строчку таким образом уже не добавляет)
Решение задачи: «Добавить строку в jTable»
textual
Листинг программы
import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.ArrayList; /** * @author Drygba * Date: 02.02.13 */ public class AddTable extends JFrame{ //myData будет хранилищем для наших данных, // ArrayList используется просто для примера private ArrayList<String[]> myData; private MyModel model; // наша модель таблицы private int countNewRow = 0; // счетчик новых строк public AddTable(){ super("Add Table"); createFrame(); } public static void main(String[] arg){ AddTable at = new AddTable(); JTable full = at.createTable(); at.add(new JScrollPane(full)); at.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); at.pack(); at.setVisible(true); } public void createFrame(){ setLayout(new BorderLayout()); JButton addButon = new JButton("Add Data"); addButon.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e){ //добавляем данные через модель таблицы model.setValueAt(new String[]{ "новая" + String.valueOf(countNewRow), "новая" + String.valueOf(countNewRow) , "новая" + String.valueOf(countNewRow) }); countNewRow++; } }); add(addButon, BorderLayout.SOUTH); } public JTable createTable(){ myData = new ArrayList<String[]>(); myData.add(new String[]{ "1", "2", "3" }); myData.add(new String[]{ "11", "21", "31" }); myData.add(new String[]{ "12", "22", "32" }); myData.add(new String[]{ "13", "23", "33" }); model = new MyModel(myData);//создаем модель таблицы и предаем начальные данные JTable table = new JTable(model);//создаем таблицу и передаем туда модель return table; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д