掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VBで○×ゲームを作るには? (ID:81288)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
ずいぶんお困りのようですね。 以下にサンプルを載せてます。ご参考までに。 <サンプル> ラベルをクリックすると○×交互にセットし、勝敗を判定します。 尚、この判定ルーチンは何処に置いても全ての位置を検索します。 置いた位置に関する部分だけ判定するなど工夫してください。 新規フォームにラベルを9つ配置してください。 lblMasu(1)〜lblMasu(9) (配置順) 1 2 3 4 5 6 7 8 9 後は、以下のコードを貼り付けてください。 Option Explicit Private blnTurn As Boolean 'ターン(True…×/False…○) Private Sub lblMasu_Click(Index As Integer) Dim strPlayer As String 'プレイヤーの記号 Dim blnWin As Boolean '勝ち判定フラグ Dim i As Integer 'ループ制御変数 Dim j As Integer 'ループ制御変数 '記号をセット If blnTurn Then strPlayer = "×" Else strPlayer = "○" End If '記号を表示 lblMasu(Index).Caption = strPlayer '横判定 For i = 1 To 7 Step 3 blnWin = True For j = i To i + 2 If lblMasu(j).Caption <> strPlayer Then blnWin = False Exit For End If Next j If blnWin Then MsgBox "Win!!" Exit Sub End If Next i '縦判定 For i = 1 To 3 blnWin = True For j = i To i + 6 Step 3 If lblMasu(j).Caption <> strPlayer Then blnWin = False Exit For End If Next j If blnWin Then MsgBox "Win!!" Exit Sub End If Next i '斜め判定(左上から右下へ) blnWin = True For i = 1 To 9 Step 4 If lblMasu(i).Caption <> strPlayer Then blnWin = False Exit For End If Next i If blnWin Then MsgBox "Win!!" Exit Sub End If '斜め判定(右上から左下へ) blnWin = True For i = 3 To 7 Step 2 If lblMasu(i).Caption <> strPlayer Then blnWin = False Exit For End If Next i If blnWin Then MsgBox "Win!!" Exit Sub End If '交代 blnTurn = Not blnTurn End Sub
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.