JavaのSwingでコンボボックスを使うサンプルです。
コンボボックスで選んで、ボタンで選んだ内容をダイアログで表示してみました。

ポイント

  1. コンボボックスを生成します
    1. 配列をパラメータとして渡すと、配列の内容でコンボボックスが生成されます。
  2. ラベルとコンボボックスをJFrameに追加します
  3. getSelectedItem()で選択中のアイテムを取得できます。

実行結果


コンボボックスで設定した内容を選択できます。


OKボタンを押すと、選択した内容をダイアログで表示します。

ソース JComboBoxTest1.java

import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
 
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JSeparator;
 
// ポイント1.コンボボックスを生成します
//        配列をパラメータとして渡すと、配列の内容でコンボボックスが生成されます。
// ポイント2.ラベルとコンボボックスをJFrameに追加します
// ポイント3.getSelectedItem()で選択中のアイテムを取得できます。
public class JComboBoxTest1 extends JFrame implements ActionListener {
	public static void main(String[] args) {
		new JComboBoxTest1();
	}
 
	// アクションリスナーから参照するためにクラス変数に置きます
	JComboBox c1;
	JComboBox c2;
 
	public JComboBoxTest1() {
 
		setTitle("コンボボックスを使ってみよう1");
		setBounds(100, 100, 300, 140);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		// 今回はFlowLayoutを使ってみます
		setLayout(new FlowLayout(FlowLayout.LEFT));
 
		// ポイント1.コンボボックスを生成します
		// 配列をパラメータとして渡すと、配列の内容でコンボボックスが生成されます。
		c1 = new JComboBox(new String[] { "いちご", "バナナ", "みかん", "りんご" });
		c2 = new JComboBox(new String[] { "ササニシキ", "コシヒカリ", "夢みずほ", "あきたこまち" });
 
		JSeparator sp1 = new JSeparator(JSeparator.HORIZONTAL);
		sp1.setPreferredSize(new Dimension(280, 0));
		JSeparator sp2 = new JSeparator(JSeparator.HORIZONTAL);
		sp2.setPreferredSize(new Dimension(280, 0));
		JSeparator sp3 = new JSeparator(JSeparator.HORIZONTAL);
		sp3.setPreferredSize(new Dimension(280, 3));
		// ポイント2.ラベルとコンボボックスをJFrameに追加します
		add(new JLabel(" 好きな果物 "));
		add(c1);
		add(sp1);
		add(new JLabel(" 好きなお米 "));
		add(c2);
		add(sp2);
 
		// ボタンを追加しましょう
		JButton b = new JButton("OK");
		b.addActionListener(this);
		add(sp3);
		add(new JLabel("        "));
		add(b);
		setVisible(true);
	}
 
	@Override
	public void actionPerformed(ActionEvent e) {
		// ポイント3.getSelectedItem()で選択中のアイテムを取得できます。
		// ボタンを押されたら、好きな果物とお米のダイアログを表示します。
		JOptionPane.showMessageDialog(this, "好きな果物は『" + c1.getSelectedItem()
				+ "』、好きなお米は『" + c2.getSelectedItem() + "』です。");
	}
}
 

アフィリエイト ここまで

最終更新:2013年07月31日 00:25