JTableにてExcel風の行ヘッダ付きテーブルを作ってみました
SwingのJTableは、デフォルトでは列ヘッダは付きますが行ヘッダが付きません。
Excelのように行ヘッダ(1,2,3,4...)を付けるサンプルを作成したのでメモします。
意外と情報が無かったんですが、実際ソースにしてみると結構シンプルに書けました。
require 'rubeus' Rubeus::Swing.irb JFrame.new "sample table" do |frame| JScrollPane.new do @table = JTable.new @table.model = ['']+('A'..'G').to_a @table.column_model.column(0).cell_renderer = @table.table_header.default_renderer (1..10).each {|i| @table.model.add_row [i]} end frame.location_relative_to = nil frame.size = "320x200" frame.visible = true end
@table.column_model.column(0).cell_renderer = @table.table_header.default_renderer
ここで、0列目のセルをテーブルヘッダにする、という記述になります。
ちなみに、テーブルのサイズをかえるには、以下にように指定すればよさそうです。
JTable.new :preferred_size=>"400x300"
JTableはちょっと調べてみたところ、いろいろできて結構奥が深そうです。
とりあえず、ここまで。