■作成するプログラムの概要
・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」を選択した状態で、「確認」ボタン押下。