条件分岐

 条件分岐とは条件により実行するかしないかを決める命令です。最初に作成したハローワールドを再利用しましょう。その前にプロジェクトを保存しておくのもよいかもしれません。

ファイル→全てを保存

を選択してください。プロジェクトが保存されましたか?それではさっそく条件分岐を試すまえにラジオボタンを設置します。ボタンを設置してみたときと同様にRadioButtonを選択し、フォーム上でDragします。プロパティウィンドウのText上でラジオボタン1と入力し、リターンキーを押します。一つでは寂しいので、もう一つ同様に配置します。ここではプロパティウィンドウのText上でラジオボタン2と入力し、リターンキーを押します。これでオブジェクトName=RadioButton1はラジオボタン1とName=RadioButton2はラジオボタン2と準備されました。やっとプログラムを書く準備ができました。If節の命令を見てみましょう。

If condition [ Then ]
   [ statements  ]
[ ElseIf elseifcondition [ Then ]
   [ elseifstatements ] ]
[ Else
   [ elsestatements ] ]
End If

上記はIf 命令です。つまり

If 条件1 then

    条件1がTrueのときに実行されるべき命令

elseif 条件2 then

  条件2がTrueのときに実行されるべき命令

else

  その他の条件のときに実行されるべき命令

end if

です。ここではラジオボタン1が選択されているときにメッセージボックスでラジオボタン1が選択されていますと表示し、ラジオボタン2が選択されているときにメッセージボックスでラジオボタン2が選択されていますと表示し、何もラジオボタンが選択されていないときにメッセージボックスで何も選択されていませんと表示してみましょう。以前のハローワールドではボタンをクリックしたときには

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

MsgBox("ハローワールド", MsgBoxStyle.OKOnly, "ハローワールドタイトル")

End Sub

のプログラムがそのまま実行されていました。今度は

MsgBox("ハローワールド", MsgBoxStyle.OKOnly, "ハローワールドタイトル")

が要りませんので削除してください。ラジオボタンが選択されているときには

(ObjectName).Checkedの値がTrueになり、選択されていない場合にはFalseになります。

よって

If RadioButton1.Checked = True Then

 ラジオボタン1が選択されている場合の命令

となります。これを手がかりにプログラムを書いてみましょう。

プログラムはこんな感じになるはずです。

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

If RadioButton1.Checked = True Then

MsgBox("チェックボックス1が選択されています。")

ElseIf RadioButton2.Checked = True Then

MsgBox("チェックボックス2が選択されています。")

Else

MsgBox("何もチェックボックスが選択されていません。")

End If

End Sub

うまく動きましたか?

戻る