• ベストアンサー
  • 暇なときにでも

【VB】超初歩的な質問

  • 質問No.1434799
  • 閲覧数85
  • ありがとう数1
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 70% (79/112)

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

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

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

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

質問者が選んだベストアンサー

  • 回答No.2
  • ベストアンサー

ベストアンサー率 45% (59/129)

どういうことをしたいのかナゾなので。(笑)
単にメッセージボックスを出すだけなら
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

繰り返し処理を行いたいなら、その部分を関数化した方が良いですね。
お礼コメント
rappaozisan

お礼率 70% (79/112)

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

どうもありがとうございます。
投稿日時:2005/06/07 17:07

その他の回答 (全1件)

  • 回答No.1

ベストアンサー率 25% (1361/5264)

このコードでは無限ループで強制終了するしかないと思いますが。
プログラムする場合、GoToは使わないようにするべきです。GoToを使うとスパゲッティプログラムになりやすいので、GoTpなしのほうが洗練されたプログラムになります。
補足コメント
rappaozisan

お礼率 70% (79/112)

やはりそうですか。

どうもありがとうございます。がんばります。
投稿日時:2005/06/07 16:45
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ