vb.netはじめてのメッセージボックス

デスクトップアプリケーションには必ず出てくるメッセージボックス。Vb.netでは、簡単な記述で様々なメッセージボックスを表示することができます。
Vb.net入門者向けに、メッセージボックスの表示サンプルを用意しました。
初めてプログラミングに挑戦される方でも簡単に実装できますのでご安心下さい。

メッセージボックスを表示する関数は、第一引数にメッセージボックスに表示する文言を指定します。
第二引数にメッセージボックスの種類を定数で指定します。

MsgBox("よろしいですか?", MsgBoxStyle.YesNoCancel + MsgBoxStyle.DefaultButton3)

こんなかんじになるのですが、なんだか足し算してますね。
MsgBoxStyle.YesNoCancelもMsgBoxStyle.DefaultButton3も定数なので足し算できます。
このように、定数を組み合わせて指定することにより、様々なメッセージボックスを表現することができます。

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        MsgBox("OK", MsgBoxStyle.Information)
    End Sub

150120_VBMES01

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        MsgBox("警告", MsgBoxStyle.Exclamation)
    End Sub

150120_VBMES02

    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        MsgBox("禁止", MsgBoxStyle.Critical)
    End Sub

150120_VBMES03

ユーザーがYesかNOのどちらをクリックしたのかを受けっとって、それによって処理を分けています。

 
    Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
        Dim ret As MsgBoxResult
        ret = MsgBox("どちらですか?", MsgBoxStyle.YesNo + MsgBoxStyle.Question)
        If ret = MsgBoxResult.Yes Then
            '「はい」がクリックされた時の処理
            Console.WriteLine("はいが選択されました。")
        Else
            '「いいえ」がクリックされた時の処理
            Console.WriteLine("いいえが選択されました。")
        End If


        'もう少しシンプルに書くと
        If MsgBox("どちらですか?", MsgBoxStyle.YesNo + MsgBoxStyle.Question) = MsgBoxResult.Yes Then
            '「はい」がクリックされた時の処理
            Console.WriteLine("はいが選択されました。")
        Else
            '「いいえ」がクリックされた時の処理
            Console.WriteLine("いいえが選択されました。")
        End If
    End Sub
<a href="http://pengin-chan.com/blog/wp-content/uploads/2015/07/150120_VBMES04.jpg"><img class="alignnone size-full wp-image-181" src="http://pengin-chan.com/blog/wp-content/uploads/2015/07/150120_VBMES04.jpg" alt="150120_VBMES04" width="200" height="137" /></a>
    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
        If MsgBox("よろしいですか?", MsgBoxStyle.OkCancel + MsgBoxStyle.Question) = MsgBoxResult.Ok Then
            '「OK」がクリックさえた時の処理
            Console.WriteLine("OKが選択されました。")
        Else
            '「キャンセル」がクリックされた時の処理
            Console.WriteLine("キャンセルが選択されました。")
        End If

    End Sub

150120_VBMES05

    Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
        Dim ret As MsgBoxResult
        ret = MsgBox("よろしいですか?", MsgBoxStyle.YesNoCancel + MsgBoxStyle.Question)
        If ret = MsgBoxResult.Yes Then
            Console.WriteLine("はいが選択されました")
        ElseIf ret = MsgBoxResult.No Then
            Console.WriteLine("いいえが選択されました")
        ElseIf ret = MsgBoxResult.Cancel Then
            Console.WriteLine("キャンセルが選択されました")
        End If
    End Sub

150120_VBMES06

キャンセルボタンが選択された状態で表示しています。
キャンセルボタンを選択状態にするのはよく見かけますね。

    Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
        'MsgBoxStyle.DefaultButton3をつけることで3番目のキャンセルボタンにカーソルが当たった状態でメッセージボックスが表示されます。

        Dim ret As MsgBoxResult
        ret = MsgBox("よろしいですか?", MsgBoxStyle.YesNoCancel + MsgBoxStyle.Question + MsgBoxStyle.DefaultButton3)
        If ret = MsgBoxResult.Yes Then
            Console.WriteLine("はいが選択されました")
        ElseIf ret = MsgBoxResult.No Then
            Console.WriteLine("いいえが選択されました")
        ElseIf ret = MsgBoxResult.Cancel Then
            Console.WriteLine("キャンセルが選択されました")
        End If
    End Sub

150120_VBMES07

このようにメッセージボックスは定数を組み合わせることにより、さまざまな表現が可能になっています。このほかにもhelpボタンなどもありますので、どんどん試して練習してみると結構たのしめますよ。

カテゴリー: VB パーマリンク