2012-03-22 11 views
-1

私は退屈していたので、私はこの小さなプログラムを作っています。 Kevinのベーコンは決して表示されません。つまり、いいえをクリックしてもElseIf dialogResult.noがtrueにならないことを意味します。私はあなたが関数としてそれを使用する必要がある文としてMessageBox.Show使用していると思うメッセージボックス内のVisual Basicの条件文

Public Class Form1 

Private Sub btnMessage_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnMessage.Click 
    MessageBox.Show("I like Kevin Bacon.", "Bacon", MessageBoxButtons.OK, MessageBoxIcon.Question) 

    If DialogResult.OK Then 
     MessageBox.Show("You like Kevin Bacon.", "Bacon", MessageBoxButtons.OK) 
     If DialogResult.OK Then 
      MessageBox.Show("We all like Kevin Bacon.", "Bacon", MessageBoxButtons.OK) 
      If DialogResult.OK Then 
       MessageBox.Show("They all like Kevin Bacon.", "Bacon", MessageBoxButtons.OK) 
       If DialogResult.OK Then 
        MessageBox.Show("Let's wait to see if Kevin Bacon will come to play.", "Bacon", MessageBoxButtons.YesNo) 
        If DialogResult.Yes Then 
         System.Threading.Thread.Sleep(9000) 
         MessageBox.Show("Kevin bacon didn't show up... :(", "No Bacon", MessageBoxButtons.OK) 
        ElseIf DialogResult.No Then 
         MessageBox.Show("Well too bad! Here's kevin bacon!", "Wild Bacon has appeared!", MessageBoxButtons.OK) 
         Form2.Show() 
        End If 
       End If 
      End If 
     End If 
    End If 

End Sub 

Private Sub btnStuff_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnStuff.Click 

End Sub 

エンドクラス

+0

オハイオ州のMessageBox」とForm2のは、ちょうどケビン・ベーコンの絵です。だから無視するだけです。 – Kentaro51

+0

ニース、それは私のような正しいVBコードを想像する方法です:) –

答えて

2

タイプDialogResultの変数を宣言し、それにMessageBoxの結果を割り当てる必要があります。あなたが今やっていることのDialogResultを見ているあなたのFormないあなた `

Dim Result As DialogResult 

    'Displays the MessageBox 

    Result = MessageBox.Show("You like Kevin Bacon.", "Bacon", MessageBoxButtons.OK) 

    ' Gets the result of the MessageBox display. 

    If Result = System.Windows.Forms.DialogResult.Ok Then 

    End If 
+0

ありがとう。それが本当に助けになりました。 – Kentaro51

1

は、ここに私のコードです。だから、代わりに:

MessageBox.Show("You like Kevin Bacon.", "Bacon", MessageBoxButtons.OK) 
If DialogResult.OK Then 

使用:

If MessageBox.Show("You like Kevin Bacon.", "Bacon", MessageBoxButtons.OK) = DialogResult.OK Then 

サンプルラインは、WinFormsのアプリケーションから取られましたが、原理はWPFおよびASP.NETで同じになること。

関連する問題