dポイントプレゼントキャンペーン実施中!

2,3日前からVB6を勉強しています。
大変初歩的な質問となりますがお許しください。

コマンドボタンを一つ貼り付けた状態で、以下のプログラムを書いて実行した場合、処理が終わらなくなりますよね。

Private Sub Command1_Click()
test:
MsgBox "test"
GoTo test
End Sub

それを終了するのはやはり強制終了するしかないのでしょうか?

A 回答 (2件)

どういうことをしたいのかナゾなので。

(笑)
単にメッセージボックスを出すだけなら
Private Sub Command1_Click()
MsgBox "test"
End Sub
ですね。
GoTo文の練習ですか?
メッセージボックスのボタンの種類を指定して、処理を分けてみるとかはどうですか?

Private Sub Command1_Click()
test:
If MsgBox("test", vbOKCancel) = vbOK Then
GoTo test' 処理の繰り返し
End If
End Sub

繰り返し処理を行いたいなら、その部分を関数化した方が良いですね。
    • good
    • 0
この回答へのお礼

別にしたいことはありません。
どういう動きをするのかいろいろやっているだけです。

どうもありがとうございます。

お礼日時:2005/06/07 17:07

このコードでは無限ループで強制終了するしかないと思いますが。


プログラムする場合、GoToは使わないようにするべきです。GoToを使うとスパゲッティプログラムになりやすいので、GoTpなしのほうが洗練されたプログラムになります。

この回答への補足

やはりそうですか。

どうもありがとうございます。がんばります。

補足日時:2005/06/07 16:45
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!