動く文字をタイピング
☆ラベルの位置制御を確認
■フォーム上にラベル(Label1)を貼り付ける。↓
■フォームをダブルクリックしコードを表示する。
■コードを書き換える。↓
Private Sub Form_Load()
'フォーム右から1000目盛の場所へ移動
Label1.Left = 1000
'フォーム上から2000目盛りの場所へ移動
Label1.Top = 2000
End Sub
■プログラムを実行する。
(解説)ラベルが(1000、2000)に移動している
■フォーム上にタイマーオブジェクト(Timer1)を配置する。↓
☆ラベルを動かす
■タイマーオブジェクト(Timer1)を1クリックしてオブジェクトプロパティのIntervalを100に変更する。
(解説)プロパティの下にIntervalの説明が載っている。Interval = 100ということで間隔が0.1秒になる
■タイマーオブジェクト(Timer1)をダブルクリックしコードを書き換える。↓
Private Sub Form_Load()
Label1.Left = 1000
Label1.Top = 0
End Sub
Private Sub Timer1_Timer()
'100目盛プラスしていく
Label1.Top = Label1.Top + 100
End Sub
■プログラムを実行する。↓
(解説)Label1が上から下へ0.1秒ごとに100目盛りごとに降りていく。
∵ダウンロード file1.zip
☆動く文字をタイピング
■コードを書き換える。↓
Private Sub Form_Load()
'乱数初期化
Randomize
Label1.Left = 1000
'prirndを呼び出す
Call prirnd
End Sub
Private Sub Timer1_Timer()
'100目盛プラスしていく
Label1.Top = Label1.Top + 100
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
'Chrでキャラコードへ変換
utu = Chr(KeyCode)
'もし変数utuとLabel1.Captionが同じ時
If utu = Label1.Caption Then
'prirndを呼び出す
Call prirnd
End If
End Sub
'乱数を発生させる
Private Sub prirnd()
Label1.Top = 0
'A~Zまでの乱数をラベルに表示(Rndが乱数、Intは整数化、Chrはキャラコード)
Label1.Caption = Chr(Int(Rnd(1) * 26) + 65)
End Sub
■プログラムを実行する。↓
(解説)A~Zまでの乱数が上から降りてくる。表示されたアルファベットを押すと違うアルファベットが出てくる。
∵ダウンロード file2.zip
☆タイプ文字を3個の増やす
■ラベル(Label1)をクリックしオブジェクト名をlblmojiに変更する。
■フォーム上のlblmojiを右クリックしコピー貼り付けでラベルを3個にする。(コントロール配列にしますか?ときかれるので「はい」にする)↓
(解説)各ラベルを指定するときはlblmoji(0)、lblmoji(1)、lblmoji(2)のようにする。
(解説)各ラベルの配列数はオブジェクトプロパティのIndexで指定できる
■コードを書き換える。↓
Private Sub Form_Load()
'乱数初期化
Randomize
'変数iを0から2まで繰り返す
For i = 0 To 2
'prirndを呼び出し、変数iを渡す
Call prirnd(i)
Next i
End Sub
Private Sub Timer1_Timer()
For i = 0 To 2
lblmoji(i).Top = lblmoji(i).Top + 100
Next i
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
'Chrでキャラコードへ変換
utu = Chr(KeyCode)
For i = 0 To 2
'もし変数utuとLabel1.Captionが同じ時
If utu = lblmoji(i).Caption Then
'prirndを呼び出す
Call prirnd(i)
End If
Next i
End Sub
'乱数を発生させる(変数iから受け取ったデータは変数xに入る)
Private Sub prirnd(x)
lblmoji(x).Top = 0
'A~Zまでの乱数をラベルに表示(Rndが乱数、Intは整数化、Chrはキャラコード)
lblmoji(x).Caption = Chr(Int(Rnd(1) * 26) + 65)
End Sub
■プログラムを実行する。↓
(解説)3つの文字がそれぞれ上から下へ移動する。
∵ダウンロード file3.zip