このページには、以下のサンプルを掲載しています。
下の項目をクリックをすると各サンプルにジャンプします。
※2週間以内の新着記事はNewアイコン、更新記事はUpアイコンが表示されます。
■テーブル最終行の削除
[ サンプルプログラムのソースコード - TableSample03.java - ]
- import java.awt.BorderLayout;
- import java.awt.Button;
- import java.awt.Color;
- import java.awt.Container;
- import java.awt.Dimension;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import javax.swing.Box;
- import javax.swing.JApplet;
- import javax.swing.JScrollPane;
- import javax.swing.JTable;
- import javax.swing.table.DefaultTableColumnModel;
- import javax.swing.table.DefaultTableModel;
- public class TableSample03 extends JApplet implements ActionListener {
- private static final long serialVersionUID = 1L;
- JTable table;
- DefaultTableModel model;
- String[] header = new String[] {"名前","年齢","性別"};
- String[][] data = new String[][]
- {{"山田一郎","45","男性"},
- {"山田恵子","40","女性"},
- {"山田花子","20","女性"},
- {"山田太郎","19","男性"}};
- Button delRowBtn = new Button("最後の行を削除");
- public void init() {
-
- // 背景色の設定
- Container c = getContentPane();
- c.setBackground(Color.WHITE);
- int w = getWidth();
- int h = getHeight();
- setLayout(new BorderLayout());
-
- // テーブルオブジェクトの生成
- model = new DefaultTableModel(data,header);
- table = new JTable(model);
- table.setGridColor(Color.BLUE);
- DefaultTableColumnModel columnModel = (DefaultTableColumnModel)table.getColumnModel();
- columnModel.getColumn(1).setPreferredWidth(20);
- // テーブルをレイアウトに追加
- JScrollPane sc = new JScrollPane(table);
- sc.setBackground(Color.WHITE);
- sc.setPreferredSize(new Dimension(w, h-60));
- add(sc, BorderLayout.NORTH);
- delRowBtn.setPreferredSize(new Dimension(w, 30));
- delRowBtn.addActionListener(this);
- add(delRowBtn, BorderLayout.SOUTH);
-
- // テーブルの上下左右の余白設定
- add(Box.createHorizontalStrut(10), BorderLayout.EAST);
- add(Box.createHorizontalStrut(10), BorderLayout.WEST);
- }
- public void actionPerformed(ActionEvent event) {
- if (event.getSource() == delRowBtn) {
- // 最終行の削除
- model.removeRow(model.getRowCount()-1);
- }
-
- }
-
- }
|
[ サンプルプログラムを実行してみる ]
サンプルを実行してみるには下のボタンをクリックしてください。
※サンプル実行ページは、別ウィンドウで開きます。実行には時間がかかることがありますのでご注意ください。
[ サンプルプログラムの解説 ]
テーブルに行を追加するには、DefaultTableModelからremoveRowメソッド(サンプル83行目)を使います。
サンプルでは、「最終行を削除」ボタンを押したときに最終行を削除しています。