職案人

求職・歴史・仏教などについて掲載するつもりだが、自分の思いつきが多いブログだよ。適当に付き合って下さい。

仲間を探せ

2019年09月15日 | VB2017
仲間を探せゲーム


【開発環境】
os:Windows 10
IDE(統合開発環境):VisualStudio 2017
言語;VB

【参考書】
株式会社秀和システム「作って覚えるVisualBasic2017」
著者:萩原 博之/宮崎 昭世

【アプリのイメージ】


■仕様
・「スタート」ボタンをクリックすることでゲームが始まる
・ゲームが始まると、秒読みも始まる
・正解の文字と違う文字が表示される。正しい文字の位置はランダムで良い
・正解の文字をクリックすると、タイマーが止まる
以上

【画面デザイン】
1)form1コントロールのプロパティを設定
・form1.Text =仲間を探せ
・form1.Size = 700,730

2)form1にSplitContainerコントロールを貼る

SplitContainerコントロールの▶をクリックし、「上下分割の方向」を選択する。

SplitContainer.Splitter = 70に設定

3)パネル1の部分に各コントロールを貼る


・textbox1コントロール
textbox1.Font = メイリオ,16pt
textbox1.Size = 55,55

・textbox2コントロール
textbox2.Font = メイリオ,16pt
textbox2.Size = 160,55
textbox2.TextAlige = Right

・Label1コントロール
Label1.Text = を探せ

・Label2コントロール
Label2.Text = 記録:

・Label3コントロール
Label3.Text = 秒

・Button1コントロール
Button1.name = ButtonStart
Button1.Font = メイリオ,16pt
Button1.Size = 211,55
Button1.Text = スタート


パネル2のデザイン画面を作る
パネル2に縦5個✕横5個のButtonコントロールを貼る

1)パネル2にButtonを貼る

・プロパティを設定する
Button1.Font = メイリオ,36pt
Button1.Size = 125,100
Button1.Text = ""空白


2)Button1コントロールを横に4個、コピーする
・Button1コントロールを選択し、「Ctrl」ボタンを押しながら、マウスをクリックする

最後に、左右の間隔を均等にするボタンを押す

3)縦横25個のButtonコントロールを完成させる
・縦横25のButtonコントロールが出来たら、上下の間隔を均等にする

・縦を選択する

左のボタンを押す



4)Timerコントロールを貼る
Timer1.interval = 20

【コーデング】
Public Class Form1
'スタート
Private Sub ButtonStart_Click(sender As Object, e As EventArgs) Handles      ButtonStart.Click
 処理を書く
End Sub

'25個のボタン
Private Sub Buttons_Click(sender As Object, e As EventArgs) Handles        Button9.Click, Button8.Click, Button7.Click, Button6.Click, Button5.Click, Button4.Click, Button3.Click, Button26.Click, Button25.Click, Button24.Click, Button23.Click, Button22.Click, Button21.Click, Button20.Click, Button2.Click, Button19.Click, Button18.Click, Button17.Click, Button15.Click, Button14.Click, Button13.Click, Button12.Click, Button11.Click, Button10.Click, Button1.Click
  処理を書く
End Sub

'タイマー
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
  処理を書く
End Sub
End Class

完成
Public Class Form1
Dim 正解 As String = "烏" '正解の文字
Dim 不正解 As String = "鳥" '不正解の文字

Dim nowTime As Double '経過時間

'スタート
Private Sub ButtonStart_Click(sender As Object, e As EventArgs) Handles ButtonStart.Click
TextBox1.Text = 正解  '探す文字を表示

Dim Rnd As Random = New Random() '乱数を生成するためのインスタンスを生成
Dim randomRessult As Integer = Rnd.Next(25) '0~24の乱数を取得

'SplitContainerの下部のpanel2に乗っている
'ButtonのTextをすべて不正解の文字にする
'forループ文
'For ループカウンタ変数名 As データ型名 = 
     初期値 To 終了値
' 繰り返す処置
' Next

For i As Integer = 0 To SplitContainer1.Panel2.Controls.Count - 1
SplitContainer1.Panel2.Controls(i).Text = 不正解
Next

'ランダムで1つだけ正解の文字にする
SplitContainer1.Panel2.Controls(randomRessult).Text = 正解
'タイマー
nowTime = 0 'タイマーの初期化
Timer1.Start()

End Sub

'25個のボタン
Private Sub Buttons_Click(sender As Object, e As EventArgs) Handles Button9.Click, Button8.Click, Button7.Click, Button6.Click, Button5.Click, Button4.Click, Button3.Click, Button25.Click, Button24.Click, Button23.Click, Button22.Click, Button21.Click, Button20.Click, Button2.Click, Button19.Click, Button18.Click, Button17.Click, Button15.Click, Button14.Click, Button13.Click, Button12.Click, Button11.Click, Button10.Click, Button1.Click
If CType(sender, Button).Text = 正解 Then
Timer1.Stop() '時間の計算終了
Else
nowTime = nowTime + 10 'ペナルティー

End If
End Sub

'タイマー
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
nowTime = nowTime + 0.02
TextBox2.Text = nowTime.ToString("0.00")

End Sub
End Class

【実行】

「スタート」ボタンを押す

「烏」ボタンを押すとタイマーが止まる。再スタートしたい時は、「スタート」ボタンを押す









コメント    この記事についてブログを書く
  • Twitterでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 息子介護物語-エピソード11(... | トップ | ヨーロッパの歴史・経済-中世... »
最新の画像もっと見る

コメントを投稿

VB2017」カテゴリの最新記事