JTableとはどんなもの?
テーブルは、比較的複雑なコンポーネントの中で、もっとも汎用性の高いものでしょう。表関係のデータを扱う際には必須のものといえます。このテーブルのコンポーネントとしてSwingに用意されているのが「JTable」というものです。
このJTableは、ただテーブルを表示するだけならば非常に簡単に使うことができます。ただ、インスタンスを作って組み込むだけです。ただし、JTable自体には、スクロール表示などの機能がないため、利用の際にはスクロールバーを表示する「JScrollPane」と併用するのが一般的です。
package jp.allabout;
import java.awt.*;
import javax.swing.*;
public class SampleApp extends JFrame {
JTable table;
JScrollPane scroll;
public SampleApp(){
this.setSize(new Dimension(300,200));
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
table = new JTable(10,5);
scroll = new JScrollPane(table);
this.add(scroll,BorderLayout.CENTER);
}
public static void main(String[] args) {
new SampleApp().setVisible(true);
}
}
JTableを、JScrollPaneに組み込んで表示したところ。 |
ごく簡単なサンプルをあげておきましょう。ここでは、JFrameにJScrollPaneを組み込み、更にこの中にJTableを組み込んでいます。JTableの使い方としてはもっとも基本的なものといえるでしょう。
JTableのもっとも単純な利用の仕方は、「表の縦横の行数、列数を指定してインスタンスを作る」という方法です。JTableはテーブルを表示するものですから、表示するテーブルの行数、列数がわからないとどうしようもありません。そこで、
new JTable( 行数 , 列数 );
このようにして表の大きさを指定してインスタンスを作成します。またJScrollPaneは、中に組み込むコンポーネントを引数に指定してインスタンスを作成します。
new JScrollPane( コンポーネント );
これで、そのコンポーネントを内部に組み込んで表示します。このコンポーネントが、組み込んである領域より大きくなると、自動的にスクロールバーを表示してスクロール表示できるようになります。