JTableとは
広告
JTableはExcelのように表形式の形でデータを表示する際に使います。注意する点として、同じ列に含まれるデータのデータ型は同じである必要があります。つまりセルは1つ1つ独立しているわけではなく、1つの行に含まれる各項目の定義をしているのが"列"であり、データは行単位で追加されていくようなものです。
JTableのクラス図は下記のようになっています。
- java.lang.Object
- java.awt.Component
- java.awt.Container
- javax.swing.JComponent
- javax.swing.JTable
- public class JTable extends JComponent implements TableModelListener, Scrollable, TableColumnModelListener, ListSelectionListener, CellEditorListener, Accessible
まずはJTableがどんなものかを見ていただく為に、下記のサンプルプログラムを実行してみてください。
import javax.swing.*;
import java.awt.event.*;
import java.awt.BorderLayout;
import java.awt.Dimension;
public class SwingTest extends JFrame{
private String[][] tabledata = {
{"日本", "3勝", "0敗", "1分"},
{"クロアチア", "3勝", "1敗", "0分"},
{"ブラジル", "1勝", "2敗", "1分"},
{"オーストラリア", "2勝", "2敗", "0分"}};
private String[] columnNames = {"COUNTRY", "WIN", "LOST", "EVEN"};
public static void main(String[] args){
SwingTest test = new SwingTest("SwingTest");
test.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
test.setVisible(true);
}
SwingTest(String title){
setTitle(title);
setBounds( 10, 10, 300, 200);
JTable table = new JTable(tabledata, columnNames);
JScrollPane sp = new JScrollPane(table);
sp.setPreferredSize(new Dimension(250, 70));
JPanel p = new JPanel();
p.add(sp);
getContentPane().add(p, BorderLayout.CENTER);
}
}
実行結果は下記のようになります。
基本的な利用方法は上記のように表形式のデータを表示するために使います。JTableは大変機能が豊富な分、色々難しいのですけど一つ一つ見て行きましょう。
( Written by Tatsuo Ikura )
JavaDrive