このページでは、JTableの使い方を集めて一覧にしています。

JTable

JTableの行をドラッグ&ドロップ

thumbnail
JTableの行をドラッグ&ドロップ

JTableの行を選択し、その順序をドラッグ&ドロップで入れ替えます。

TransferHandlerを使ってJTableの行をドラッグ&ドロップ、並べ替え

thumbnail
TransferHandlerを使ってJTableの行をドラッグ&ドロップ、並べ替え

JTableの行を複数選択し、ドラッグ&ドロップで並べ替えを可能にするTransferHandlerを作成します。

JTableの行を別のJTableにドラッグして移動

thumbnail
JTableの行を別のJTableにドラッグして移動

JTableの行を別のJTableにドラッグ&ドロップで移動します。

JTableのセルの編集をコミット

thumbnail
JTableのセルの編集をコミット

セルの編集中、フォーカスが別のコンポーネントに移動した場合、その編集を確定する方法をテストします。

JTable自体の高さを拡張

thumbnail
JTable自体の高さを拡張

JDK 6で導入された機能を使用して、JViewportの高さまでJTableを拡張します。

JTableのセルを編集不可にする

thumbnail
JTableのセルを編集不可にする

JTableのすべてのセルを編集不可にする方法をテストします。

JTableでキー入力によるセル編集開始を禁止する

thumbnail
JTableでキー入力によるセル編集開始を禁止する

キー入力やマウスクリックによるJTableのセル編集開始を禁止します。

JTableで行を選択

thumbnail
JTableで行を選択

JTableで、行を選択した場合の動作をテストします。

JTableの行を追加、削除

thumbnail
JTableの行を追加、削除

JTableへの行追加と、選択行の削除をJPopupMenuから実行します。

JTableで行の追加、削除アニメーション

thumbnail
JTableで行の追加、削除アニメーション

JTableの行追加や削除をスライドアニメーションで強調します。

↑10 ↓11

JTableのセルをエクスプローラ風に表示する

thumbnail
JTableのセルをエクスプローラ風に表示する

セルの中にアイコンと文字列を配置し、エクスプローラ風に見えるよう、文字列だけにフォーカスをかけます。

JTableで文字列をクリックした場合だけセルを選択状態にする

thumbnail
JTableで文字列をクリックした場合だけセルを選択状態にする

JTableの文字列以外の場所がクリックされた場合、そのセルが選択されないようにします。

JTableの選択状態を変更

thumbnail
JTableの選択状態を変更

JTableの選択状態をchangeSelectionメソッドを使って変更します。

JTableのフォーカスを一行全体に適用する

thumbnail
JTableのフォーカスを一行全体に適用する

JTableのフォーカスをセルではなく、一行全体に掛かっているように表示します。

JTableの次行にTabキーでフォーカスを移動

thumbnail
JTableの次行にTabキーでフォーカスを移動

Tabキーでセルのフォーカスが次行に移動するように設定します。

JTableの行を全削除

thumbnail
JTableの行を全削除

JTableのモデルから、カラムヘッダの状態は変更せず、すべての行を一括で削除します。

JTableのTooltipsを行ごとに変更

thumbnail
JTableのTooltipsを行ごとに変更

JTableTooltipsが、カーソルのある行の内容などを表示するように設定します。

JTableの背景色を変更

thumbnail
JTableの背景色を変更

JTableを追加したJViewportがセルで隠れていない部分の色を変更します。

JTableの行の高さを変更する

thumbnail
JTableの行の高さを変更する

JTableの行の高さを変更して、マウスカーソルの下を魚眼レンズのように拡大します。

JTableを別コンポーネントから操作

thumbnail
JTableを別コンポーネントから操作

JTableの全選択や選択された行のコピーをJButtonなどの別コンポーネントから行います。

↑20 ↓21

JTableのセル文字揃え

thumbnail
JTableのセル文字揃え

JTableのセルに表示されている文字列の揃えを変更します。

JTableのセルをダブルクリック

thumbnail
JTableのセルをダブルクリック

JTableのセルをダブルクリックして内容を表示します。

TableCellRendererでセルの背景色を変更

thumbnail
TableCellRendererでセルの背景色を変更

TableCellRendererを継承するレンダラーを作ってテーブルのセルを修飾します。

JTableのセル編集を文字入力変換中からでも可能にする

thumbnail
JTableのセル編集を文字入力変換中からでも可能にする

IMEが直接入力以外で、一時ウィンドウが表示されていても、入力確定でセル編集を開始します。

JTableを半透明にする

thumbnail
JTableを半透明にする

JTable自体をsetOpaque(false)で透明に、またセル描画に使用されるJTableの背景色を半透明にするなどの設定で、半透明のJTableを作成します。

JTableが空の場合、中央にJComponentを表示する

thumbnail
JTableが空の場合、中央にJComponentを表示する

JTableが空の場合、表領域の中央に任意のJComponentが表示されるように設定します。

JTableでキー入力によるセル編集自動開始を一部禁止する

thumbnail
JTableでキー入力によるセル編集自動開始を一部禁止する

JTableのセル編集自動開始をファンクションキーの場合だけ無効にします。

JTableのセルにJRadioButton

thumbnail
JTableのセルにJRadioButton

JTableのセルにJRadioButtonを配置し、全体で一つだけ選択できるように設定します。

JTableの罫線の有無とセルの内余白を変更

thumbnail
JTableの罫線の有無とセルの内余白を変更

JTableの罫線の表示非表示とセルの内余白を変更します。

JTableのセルにAnimated GIFを表示する

thumbnail
JTableのセルにAnimated GIFを表示する

ImageIconImageObserverを設定して、JTableのセル中でAnimated GIFのアニメーションを行います。

↑30 ↓31

JTableで先頭文字のキー入力による検索を行う

thumbnail
JTableで先頭文字のキー入力による検索を行う

JTableにフォーカスがある状態でキー入力をした場合、先頭文字が一致する行を検索して選択状態にします。

JSplitPaneに2つのJTableを配置してスクロールを同期する

thumbnail
JSplitPaneに2つのJTableを配置してスクロールを同期する

JSplitPaneの左右に、JTableをそれぞれ配置し、スクロールや追加などが同期するようにモデルを共有します。

JTableのセルに複数配置したコンポーネントのJToolTip

thumbnail
JTableのセルに複数配置したコンポーネントのJToolTip

JTableのセル中に複数個配置したコンポーネントにそれぞれJToolTipが表示されるように設定します。

JTableのモデルが変更されたことをイベントで受け取る

thumbnail
JTableのモデルが変更されたことをイベントで受け取る

JTableのモデルの変更を受け取ってJTableHeaderに追加したJCheckBoxを更新します。

JInternalFrame間でのドラッグ&ドロップによるJTableの行入れ替え

thumbnail
JInternalFrame間でのドラッグ&ドロップによるJTableの行入れ替え

JInternalFrame間でJTableの行をドラッグ&ドロップを使って入れ替えます。

JTableのHTML形式コピーをカスタマイズする

thumbnail
JTableのHTML形式コピーをカスタマイズする

JTableのセルを選択してクリップボードにHTMLテキストをコピーするとき、そのセルのクラスに応じて生成するタグを変更します。

JTableのモデルをXMLファイルで保存、復元する

thumbnail
JTableのモデルをXMLファイルで保存、復元する

JTableのモデルをXMLEncoderXMLDecoderを使って、XMLファイルで保存、復元します。

JTableのセルを選択してJListにドラッグ&ドロップでIconをコピーする

thumbnail
JTableのセルを選択してJListにドラッグ&ドロップでIconをコピーする

JTableのセルを選択可能にし、ドラッグ&ドロップでそのセル内のIconJListにコピーできるようにTransferHandlerを設定します。

JTableのセルを編集開始したときにセルエディタがフォーカスを取得するよう設定する

thumbnail
JTableのセルを編集開始したときにセルエディタがフォーカスを取得するよう設定する

JTableのセルを編集開始したときに、セルエディタがフォーカスを取得するかどうかを設定で切り替えます。

JTableの行高がJViewportの高さに合うまで調整する

thumbnail
JTableの行高がJViewportの高さに合うまで調整する

JTableの各行の高さ変更することで行数などに変更があっても、JViewportに余白が発生しないように調整します。

↑40 ↓41

JScrollBarをJTable上に重ねて表示するJScrollPaneを作成する

thumbnail
JScrollBarをJTable上に重ねて表示するJScrollPaneを作成する

半透明のJScrollBarJTable上に重ねてレイアウトするJScrollPaneを作成します。

JTableをスクロールバー無しのドラッグでスクロールする

thumbnail
JTableをスクロールバー無しのドラッグでスクロールする

JTableをスクロールバーではなく、内部の行をマウスでドラッグすることでスクロール可能になるよう設定します。

JTableにLocaleを考慮したLocalDateを適用してカレンダーを表示する

thumbnail
JTableにLocaleを考慮したLocalDateを適用してカレンダーを表示する

JTableに週の最初の曜日がLocaleに応じて変化するカレンダーを表示します。

JTableのセル選択をテストする

thumbnail
JTableのセル選択をテストする

JTableの行と列のSelectionModelListSelectionListenerを追加し、選択されたセルの情報を書き出すテストを行っています。

thumbnail
JComboBoxのドロップダウンリストとしてJTableを使用する

JComboBoxのドロップダウンリストとしてJListの代わりにJTableを使用します。

JTableの本体、ヘッダ、親JScrollPaneなどにBorderを設定する

thumbnail
JTableの本体、ヘッダ、親JScrollPaneなどにBorderを設定する

JTableやその内部のJTableHeader、親のJScrollPaneJViewportにそれぞれ異なるBorderを設定するテストを行います。

JScrollPaneの行ヘッダを右側に変更する

thumbnail
JScrollPaneの行ヘッダを右側に変更する

JScrollPaneのレイアウトマネージャを使用して、行ヘッダをデフォルトの左側から右側に変更します。

JFileChooserの詳細表示でファイル名が編集中の場合はそれをキャンセルする

thumbnail
JFileChooserの詳細表示でファイル名が編集中の場合はそれをキャンセルする

JFileChooserを詳細表示モードで表示したとき、前回のファイル名編集が継続中の場合はそれをキャンセルします。

JTableに指定したディレクトリへのファイル追加、削除などを表示する

thumbnail
JTableに指定したディレクトリへのファイル追加、削除などを表示する

WatchServiceを使用してディレクトリの変更を監視し、ファイルの追加削除をJTableに表示します。

JTableで選択されているすべてのセルを取得する

thumbnail
JTableで選択されているすべてのセルを取得する

JTableで選択されているすべてのセルを取得し、その値を一括で変更します。

↑50 ↓51

JTableの幅が一定以下で水平スクロールバー、以上で列幅を自動拡張するよう設定

thumbnail
JTableの幅が一定以下で水平スクロールバー、以上で列幅を自動拡張するよう設定

JTableの幅が一定以下の場合は列幅を維持して水平スクロールバーを表示し、それ以上になる場合は列幅の自動調整を実行してJTableの幅まで拡張するよう設定します。

SwingWorkerを一スレッドずつ順番に実行する

thumbnail
SwingWorkerを一スレッドずつ順番に実行する

JTableのセルに配置したJProgressBarを操作するSwingWorkerタスクを一つずつ順番に実行します。

JTableのドラッグスクロールをタッチスクリーンで実行する

thumbnail
JTableのドラッグスクロールをタッチスクリーンで実行する

JTableのドラッグスクロールをタッチスクリーンで実行可能にするためのリスナーを作成します。

TransferHandlerを使用したドラッグ&ドロップで挿入先を表示するドロップラインの色を変更する

thumbnail
TransferHandlerを使用したドラッグ&ドロップで挿入先を表示するドロップラインの色を変更する

JListJTableJTreeTransferHandlerを使用したドラッグ&ドロップで挿入先を表示するドロップラインの色を変更します。

JTableで作成したカレンダーの日付を囲み数字にする

thumbnail
JTableで作成したカレンダーの日付を囲み数字にする

JTableで作成したカレンダーの日付が休日の場合はJLabelで作成した囲み数字に変更します。

JTableのヘッダやセル罫線の色を統一して罫線の幅が変化しないよう設定する

thumbnail
JTableのヘッダやセル罫線の色を統一して罫線の幅が変化しないよう設定する

JTableのヘッダ背景色、セル罫線、セルエディタ罫線の色を統一して、セルが編集状態になっても全体の罫線の幅が変化しないよう設定します。

JTableの行の高さをマウスドラッグで変更する

thumbnail
JTableの行の高さをマウスドラッグで変更する

JLayerを使用してJTableの行の高さをマウスでドラッグして変更可能にします。

JTableの水平JScrollBarをリサイズ可能にするためJSplitPaneに再配置する

thumbnail
JTableの水平JScrollBarをリサイズ可能にするためJSplitPaneに再配置する

JTableを配置したJScrollPaneから水平JScrollBarを取り出し、JSplitPaneに再配置してリサイズ可能にします。

JScrollBarの下にスクロールロックボタンを配置する

thumbnail
JScrollBarの下にスクロールロックボタンを配置する

JScrollPaneから取得した垂直JScrollBarとそれらのスクロールをロックするためのJToggleButtonを別パネルに配置します。

JTableを配置したJScrollPaneの右上コーナー区画に配置されるコンポーネントを取得する

thumbnail
JTableを配置したJScrollPaneの右上コーナー区画に配置されるコンポーネントを取得する

JTableを配置したJScrollPaneの右上コーナー区画に配置されるコンポーネントを取得し、JTableの幅よりJViewportの幅が大きくなる場合はそれを非表示に切り替えます。

↑60 ↓61

JTableが配置されたJScrollPaneのBorderを変更する

thumbnail
JTableが配置されたJScrollPaneのBorderを変更する

JTableが配置されたJScrollPaneに適用されるBorderをまとめて変更します。

JScrollPaneにJTableを配置して連続月間カレンダーを作成する

thumbnail
JScrollPaneにJTableを配置して連続月間カレンダーを作成する

JScrollPaneJTableを配置してマウスホイールなどでスクロール可能な連続月間カレンダーを作成します。

JTableのセル内に配置したJCheckBoxをクリックして行の高さの展開・折り畳みを実行する

thumbnail
JTableのセル内に配置したJCheckBoxをクリックして行の高さの展開・折り畳みを実行する

JTableのセル内にJCheckBoxを配置し、これをクリックしたらとなりのセルの推奨サイズまで行の高さを展開します。

JTableの水平罫線を描画する位置とその色をソート条件に応じて変更する

thumbnail
JTableの水平罫線を描画する位置とその色をソート条件に応じて変更する

JTableで順位表を作成し、上位と下位のグループ分けを表す水平罫線をJLayerを使用して描画するよう設定します。

JTableのグリッド線描画をUIDefaultsから復元する

thumbnail
JTableのグリッド線描画をUIDefaultsから復元する

JTableのグリッド線を表示するかをLookAndFeelのデフォルト設定から復元するよう設定します。

JTableの行を右クリックで選択して同時にJPopupMenuを開く

thumbnail
JTableの行を右クリックで選択して同時にJPopupMenuを開く

JTableの行を右クリックした場合、その選択状態の変更とJPopupMenuの表示を両方実行する方法をテストします。

JTableの表示倍率を変更する

thumbnail
JTableの表示倍率を変更する

JTableのフォントサイズ、行高、セルエディタのチェックアイコンなどを拡大縮小して表示倍率を変更します。

JTableの行選択背景描画をラウンド矩形に変更する

thumbnail
JTableの行選択背景描画をラウンド矩形に変更する

JTableの行選択背景が行全体でラウンド矩形になるよう先頭・末尾セルのTableCellRendererで角を丸めて描画します。

JTableのセルに行選択チェックボックスを追加する

thumbnail
JTableのセルに行選択チェックボックスを追加する

JTableのセルに行選択チェックボックスを設定してキー操作なしで複数行選択を可能にします。

JTableのセル選択背景描画をラウンド矩形に変更する

thumbnail
JTableのセル選択背景描画をラウンド矩形に変更する

JTableのセルを選択可能に設定し、その選択背景描画をラウンド矩形に変更します。