TOP →
Java →
Swing →
JList → This Page
JList@Swing サンプル02
概要
Java -
Swing -
JList のサンプルです。
・枠線を設定
・文字色、背景色を設定
・フォントを設定
・カーソルを設定
・サイズを設定
・項目選択方法の設定
・ツールチップを設定
解説
リスト1は枠線のみ設定、
リスト2は文字色、背景色を設定、
リスト3はフォントを設定、
リスト4はカーソルを設定(リスト上にマウスカーソルがのるとカーソルが変わる)、
リスト5はサイズを設定、
リスト6~8は項目選択方法を設定しています。
また、各種リストの上にカーソルを置いて数秒間待つと
ツールチップが表示されます。
項目選択方法の設定は setSelectionMode メソッドで行います。
設定値の内容は以下の通りです。
設定値 | 内容 |
ListSelectionModel.SINGLE_SELECTION |
1 回に 1 つのリストインデックスのみが選択可能 |
ListSelectionModel.SINGLE_INTERVAL_SELECTION |
連続するインデックス区間を 1 回に 1 つ選択可能 |
ListSelectionModel.MULTIPLE_INTERVAL_SELECTION |
選択対象に制限なし(デフォルト) |
サンプルイメージ
サンプルソース
import java.awt.Color;
import java.awt.Cursor;
import java.awt.Dimension;
import java.awt.Font;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.ListSelectionModel;
import javax.swing.border.BevelBorder;
import javax.swing.border.LineBorder;
/**
* JList サンプル02
* ・枠線を設定
* ・文字色、背景色を設定
* ・フォントを設定
* ・カーソルを設定
* ・サイズを設定
* ・項目選択方法の設定
* ・ツールチップを設定
*
* @author みっちー
*/
public class JList02 extends JFrame {
private static final long serialVersionUID = 1L;
/**
* 開始メソッド
*
* @param args パラメータ
*/
public static void main(String[] args) {
JList02 frame = new JList02();
// 閉じるボタンをクリックされた場合の動作を設定
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// ウインドウのタイトルを設定
frame.setTitle("JList サンプル02");
// フレームの X座標、Y座標、幅、高さを設定
frame.setBounds(100, 200, 480, 250);
// フレームを表示(これをしないと透明のフレームが立ち上がってしまう)
frame.setVisible(true);
}
/**
* コンストラクタ
*/
public JList02() {
// パネルを作成
JPanel panelBase = new JPanel();
// データ
String[] data = {"11111", "22222", "33333", "44444", "55555"};
// リストを作成
JList<String> list1 = createList(data, 1);
JList<String> list2 = createList(data, 2);
JList<String> list3 = createList(data, 3);
JList<String> list4 = createList(data, 4);
JList<String> list5 = createList(data, 5);
JList<String> list6 = createList(data, 6);
JList<String> list7 = createList(data, 7);
JList<String> list8 = createList(data, 8);
// 枠を設定
list1.setBorder(new LineBorder(Color.BLUE, 5));
// 文字色、背景色を設定
list2.setForeground(Color.RED);
list2.setBackground(Color.BLUE);
// フォントを設定
list3.setFont(new Font("MS ゴシック", Font.BOLD, 22));
// カーソルを設定
list4.setCursor(new Cursor(Cursor.HAND_CURSOR)); // 手カーソル
// サイズを設定
list5.setPreferredSize(new Dimension(80, 150));
// 項目選択方法の設定
list6.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
list7.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
list8.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
// リストを追加
panelBase.add(list1);
panelBase.add(list2);
panelBase.add(list3);
panelBase.add(list4);
panelBase.add(list5);
panelBase.add(list6);
panelBase.add(list7);
panelBase.add(list8);
// パネルを追加
getContentPane().add(panelBase);
}
/**
* テスト用のリストを作成
*
* @param data 初期値
* @param no No
* @return リスト
*/
private JList<String> createList(String[] data, int no) {
JList<String> list = new JList<String>(data);
// 枠線を設定
list.setBorder(new BevelBorder(BevelBorder.RAISED));
// ツールチップを設定
list.setToolTipText("リスト" + no + "のツールチップです");
return list;
}
}
サンプルソースのダウンロード
ソースのダウンロード(Eclipse用のプロジェクトファイルも同梱)
更新履歴
2016/05/13 ツールチップ設定を追加
Windows 8.1 + Java 7 環境で全体を見直し
2008/01/25 新規作成
TOP →
Java →
Swing →
JList → This Page