【Java】GUIアプリ:選択したラジオボタンに応じて、メッセージボックスを出力する

■作成するプログラムの概要

・GUIアプリケーションを作成する。

・ラジオボタン(3つ)と「確認」ボタンを設置する。

・「確認」ボタン押下時、選択されたラジオボタンに従い、メッセージボックスを出力する。

■フローチャート

▼初期処理(コンストラクタ)

▼「確認」ボタンクリック時の処理

■プログラム仕様

▼初期処理(コンストラクタ)

入力処理内容出力
GUI画面をセットする。
「確認」ボタンを生成する。
ボタンクリック時の処理を、「確認」ボタンに設定する。
ボタングループを生成する。
生成したボタングループにラジオボタン1、2、3を1つのグループに設定する。
※なお、ラジオボタン1、2、3は、フィールド宣言しておく。
ラジオボタンをGUI画面に設定する。
「確認」ボタンをGUI画面に設定する。
GUI画面の「閉じる」を押下した時、プログラムも終了する。
GUI画面の可視化を有効にする。

▼「確認」ボタンクリック時の処理

入力処理内容出力
▼条件分岐:ラジオボタン
|【ラジオボタン1が選択された場合】
|メッセージを出力する・・・①
-----
|【ラジオボタン2が選択された場合】
|メッセージを出力する・・・②
-----
|【ラジオボタン3が選択された場合】
|メッセージを出力する・・・③
【メッセージボックス】
①ラジオボタン1を選択
②ラジオボタン2を選択
③ラジオボタン3を選択

■サンプルコード

import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;

class MakeRadioBtn extends JFrame implements ActionListener{
	// フィールド宣言
	JRadioButton jrbtn1 = new JRadioButton("ラジオボタン1", true);
	JRadioButton jrbtn2 = new JRadioButton("ラジオボタン2");
	JRadioButton jrbtn3 = new JRadioButton("ラジオボタン3");
	
	// コンストラクタ
	public MakeRadioBtn() {
		// GUI画面の設定
		getContentPane().setLayout(new FlowLayout());
		
		// ボタンの生成
		JButton btn = new JButton("確認");
		
		// ボタン押下時の処理を設定
		btn.addActionListener(this);
		
		// ボタングループを生成
		ButtonGroup btnGroup = new ButtonGroup();
		
		// ラジオボタンを1つのボタングループに格納
		btnGroup.add(jrbtn1);
		btnGroup.add(jrbtn2);
		btnGroup.add(jrbtn3);
		
		// ラジオボタンを画面に追加
		getContentPane().add(jrbtn1);
		getContentPane().add(jrbtn2);
		getContentPane().add(jrbtn3);
		
		// ボタンを画面に追加
		getContentPane().add(btn);
		
		// GUIを閉じた時、プログラムも終了
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
				
		// サイズを設定
		setSize(500, 100);
				
		// GUI画面の可視化
		setVisible(true);
	}
	
	// 「確認」ボタンクリック時の処理
	public void actionPerformed(ActionEvent ae) {
		if (jrbtn1.isSelected()) {
			JOptionPane.showMessageDialog(null,
				"ラジオボタン1が選択されています",
				"ラジオボタン確認",
				JOptionPane.INFORMATION_MESSAGE);
		}else if (jrbtn2.isSelected()){
			JOptionPane.showMessageDialog(null,
				"ラジオボタン2が選択されています",
				"ラジオボタン確認",
				JOptionPane.INFORMATION_MESSAGE);
		}else if(jrbtn3.isSelected()) {
			JOptionPane.showMessageDialog(null,
					"ラジオボタン3が選択されています",
					"ラジオボタン確認",
					JOptionPane.INFORMATION_MESSAGE);
		}
	}
}

// メイン処理(GUIアプリ起動)
public class IsRadioBtnChecked {
	public static void main(String[] args) {
		new MakeRadioBtn(); 
	}
}

■実行結果

・初期画面:ラジオボタン1を選択した状態で表示。


・「ラジオボタン1」を選択した状態で、「確認」ボタン押下。


・「ラジオボタン2」を選択した状態で、「確認」ボタン押下。


・「ラジオボタン3」を選択した状態で、「確認」ボタン押下。

タイトルとURLをコピーしました