設定値 | 内容 |
---|---|
JList.HORIZONTAL_WRAP |
セルは水平方向に配置され、必要に応じて次の行へ折り返される。 使用する行数は、0 より大きい場合 getVisibleRowCount で定義され、 そうでない場合は JList の幅で指定される |
JList.VERTICAL | セルは 1 つの列で垂直方向に配置される |
JList.VERTICAL_WRAP |
セルは垂直方向に配置され、必要に応じて次の列へ折り返される。 使用する行数は、0 より大きい場合 getVisibleRowCount で定義され、 そうでない場合は JList の高さで指定される |
import java.awt.Dimension; import javax.swing.JFrame; import javax.swing.JList; import javax.swing.JPanel; import javax.swing.border.BevelBorder; /** * JList サンプル04 * ・項目の配置方法を変更 * ・表示行数の設定 * * @author みっちー */ public class JList04 extends JFrame { private static final long serialVersionUID = 1L; /** * 開始メソッド * * @param args パラメータ */ public static void main(String[] args) { JList04 frame = new JList04(); // 閉じるボタンをクリックされた場合の動作を設定 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // ウインドウのタイトルを設定 frame.setTitle("JList サンプル04"); // フレームの X座標、Y座標、幅、高さを設定 frame.setBounds(100, 200, 350, 380); // フレームを表示(これをしないと透明のフレームが立ち上がってしまう) frame.setVisible(true); } /** * コンストラクタ */ public JList04() { // パネルを作成 JPanel panelBase = new JPanel(); // データ String[] data = {"11111", "22222", "33333", "44444", "55555", "66666"}; // リストを作成 JList<String> list1 = createList(data); JList<String> list2 = createList(data); JList<String> list3 = createList(data); JList<String> list4 = createList(data); JList<String> list5 = createList(data); JList<String> list6 = createList(data); JList<String> list7 = createList(data); JList<String> list8 = createList(data); JList<String> list9 = createList(data); // 項目の配置方法を変更 list1.setLayoutOrientation(JList.VERTICAL); list2.setLayoutOrientation(JList.VERTICAL); list3.setLayoutOrientation(JList.VERTICAL); list4.setLayoutOrientation(JList.VERTICAL_WRAP); list5.setLayoutOrientation(JList.VERTICAL_WRAP); list6.setLayoutOrientation(JList.VERTICAL_WRAP); list7.setLayoutOrientation(JList.HORIZONTAL_WRAP); list8.setLayoutOrientation(JList.HORIZONTAL_WRAP); list9.setLayoutOrientation(JList.HORIZONTAL_WRAP); // 表示行数の設定 list1.setVisibleRowCount(0); list2.setVisibleRowCount(1); list3.setVisibleRowCount(2); list4.setVisibleRowCount(0); list5.setVisibleRowCount(1); list6.setVisibleRowCount(2); list7.setVisibleRowCount(0); list8.setVisibleRowCount(1); list9.setVisibleRowCount(2); // リストを追加 panelBase.add(list1); panelBase.add(list2); panelBase.add(list3); panelBase.add(list4); panelBase.add(list5); panelBase.add(list6); panelBase.add(list7); panelBase.add(list8); panelBase.add(list9); // パネルを追加 getContentPane().add(panelBase); } /** * テスト用のリストを作成 * * @param data 初期値 * @return リスト */ private JList<String> createList(String[] data) { JList<String> list = new JList<String>(data); // 分かりやすいように枠線を設定 list.setBorder(new BevelBorder(BevelBorder.RAISED)); // サイズを設定 list.setPreferredSize(new Dimension(100, 100)); return list; } }
2016/05/13 Windows 8.1 + Java 7 環境で全体を見直し 2008/01/25 新規作成