【学習】WinFormsでラジオボタンを使ってみよう(1つだけ選択)
Windows Forms アプリでは RadioButton(ラジオボタン) を使うことで、
- サイズ選択(S / M / L)
- 支払い方法(現金 / カード)
- モード選択
のように、複数の中から1つだけ選ぶ画面が作れます。
チェックボックスでは複数選択できましたが、ラジオボタンは1つだけ選択です。同じグループ内で、選んだもの以外は自動で外れます。
今回はサイズ選択(S / M / L)のアプリを作ります。
今日作るもの
S / M / L のいずれかを選んで 確認 ボタンを押すと
選択したサイズ:M
のように、選んだサイズが表示されます。
ソリューションとプロジェクトを作る
チェックボックスのチュートリアルで作成した SelectSample ソリューションに、新しいプロジェクトを追加します。
- ソリューションエクスプローラーでソリューションを右クリック → 追加 → 新しいプロジェクト
- テンプレート: Windows Forms アプリ (.NET Framework)
- プロジェクト名: RadioButtonDemo
作成すると Form1 が表示されます。
フォームに配置するコントロール
フォームに次のものを配置します。
| コントロール | 名前 |
|---|---|
| RadioButton | smallRadioButton |
| RadioButton | mediumRadioButton |
| RadioButton | largeRadioButton |
| Button | confirmButton |
| Label | resultLabel |
各 RadioButton の Text を「S」「M」「L」に設定します。3つとも同じフォーム上に置くと、自動的に1つだけ選択されるグループになります。
Checkedプロパティとは
ラジオボタンも Checked プロパティで状態を取得します。
smallRadioButton.Checked→ S が選ばれているmediumRadioButton.Checked→ M が選ばれているlargeRadioButton.Checked→ L が選ばれている
if 文でどれが選ばれているか判定します。
ボタンのイベントを登録する
confirmButton をダブルクリックすると confirmButton_Click イベントが作成されます。
ここでどの RadioButton が Checked か判定して、Label に表示します。
完成コード
using System;
using System.Windows.Forms;
namespace SelectSample
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void confirmButton_Click(object sender, EventArgs e)
{
if (smallRadioButton.Checked)
{
resultLabel.Text = "選択したサイズ:S";
}
else if (mediumRadioButton.Checked)
{
resultLabel.Text = "選択したサイズ:M";
}
else if (largeRadioButton.Checked)
{
resultLabel.Text = "選択したサイズ:L";
}
}
}
}
プログラムの流れ
確認ボタンを押す
↓
smallRadioButton.Checked を判定
↓
true なら「S」を表示
↓
false なら mediumRadioButton を判定
↓
true なら「M」、false なら「L」を表示
重要ポイント
ラジオボタンは「1つだけ選択」 です。
- 同じフォーム上の RadioButton は、1つ選ぶと他は自動で外れる
- 複数のグループに分けたい場合は GroupBox で囲む
Checkedプロパティでどれが選ばれているか取得する
チェックボックスとの違い:
| 種類 | 選択の仕方 |
|---|---|
| CheckBox | 複数選択できる |
| RadioButton | 1つだけ選択 |
発展:GroupBoxでグループ分け
「サイズ」と「色」のように、別々のグループで1つずつ選びたい場合は GroupBox を使います。
- GroupBox を2つ配置
- 1つ目の GroupBox に S / M / L の RadioButton を入れる
- 2つ目の GroupBox に 赤 / 青 / 緑 の RadioButton を入れる
これで「サイズ1つ」と「色1つ」をそれぞれ選べます。
発展アイデア
ラジオボタンを使うと次のようなものも作れます。
- アンケート(単一回答)
- 注文フォーム(サイズ・辛さ・温度など)
- 設定画面(テーマ選択)
- クイズ(答えを1つ選ぶ)
ラジオボタンは1つだけ選ぶ選択UIの基本です。




ディスカッション
コメント一覧
まだ、コメントがありません