私はクラス用のゲームを書いています。プレーヤーが行うことは、「wasd」を使用して追いかけているサメから離れて泳ぐことです。私の移動コードは
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
Select Case e.KeyCode
Case Keys.W
If picSwimmer.Location.Y > -5 Then
Loc = New Point(picSwimmer.Location.X, picSwimmer.Location.Y - 15)
picSwimmer.Location = Loc
End If
Case Keys.S
End If
If picSwimmer.Location.Y < Me.Height Then
Loc = New Point(picSwimmer.Location.X, picSwimmer.Location.Y + 15)
picSwimmer.Location = Loc
End If
(私はa&dについても同じ設定をしています)。私の問題は、「wasd」キーの1つを押したままにすると、画像がわずかに移動してから停止し、約1秒後に滑らかに動き始めることです。これは、VBがキーが1回クリックされるのではなく、押されていることを認識するのにかかる時間の長さによるものだと思います。キーが最初から押されていることをVBが登録するようにするにはどうすればよいですか、またはキーが押されていることを認識するのにかかる時間を短縮するにはどうすればよいですか?または、キーを押すとすぐに動きがスムーズになるものはありますか?