目次へ

14.2. javax.swing.table.TableModel

「JTable」は内部データを「TableModel」インタフェースを実装したクラスで管理しています。このインタフェースを実装したクラスを作成し、「JTable」のコンストラクタに渡す事によって、テーブルを作成する事もできます。通常は「javax.swing.table.DefaultTableModel」を使用すれば良いでしょう。

DefaultTableModel model=new DefaultTableModel();
model.addColumn("Sunday");
model.addColumn("Monday");

....
 
String data=new String[7];
...
model.addRow(data);
...
 
JTable table=new JTable(model);
「JTable」イメージ3

「addColumn」メソッドで列の追加、「addRow」メソッドで行の追加を行います。「addColumn」メソッドでは追加する列のカラム名、「addRow」メソッドでは追加する行のデータ内容を引数として指定します。「addColumn」メソッドで追加する列のデータ内容を指定する事もできます。

(実習課題2)

実習課題1のプログラムを改良しなさい。

  • テーブルを右クリックするとポップアップメニューを表示する。
  • メニュー内容は「列の追加」「行の追加」「行の挿入」。それぞれ対応する動作が実行されるようにする事。
  • (ヒント)「JTable」の「getSelectedRow」で選択されている行がわかります。
  • (ヒント)「DefaultTableModel」の「insertRow」で行の挿入ができます。

解答例はこちら

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp