版权声明: https://blog.csdn.net/eds124/article/details/82534540
Public Class Form1
Dim WithEvents p As Panel = New Panel()
Private y As Integer = 500, x As Integer = 500, ky As Integer = 1000
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Controls.Add(p)
Me.WindowState = FormWindowState.Maximized
p.BackColor = Color.Black
p.Location = New Point(10, 10)
p.Size = New Size(1900, 1000)
End Sub
Public Sub p_Paint(ByVal o As Object, ByVal pea As PaintEventArgs) Handles p.Paint
Dim g As Graphics = pea.Graphics
g.FillRectangle(Brushes.Red, x, y, 100, 100)
g.DrawRectangle(Pens.Blue, x + 45, 0, 10, y)
g.FillRectangle(Brushes.Pink, 0, ky, 1900, 200)
End Sub
Public Sub p_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
Dim k As Keys = e.KeyCode
If Keys.E = k And y > 0 Then
y -= 100
ElseIf Keys.D = k And y < 900 Then
y += 100
ElseIf Keys.S = k And x > 0 Then
x -= 100
ElseIf Keys.F = k And x < 1800 Then
x += 100
ElseIf Keys.K = k And ky > 800 Then
ky -= 200
ElseIf Keys.J = k And ky < 1000 Then
ky += 200
End If
Me.Refresh()
End Sub
End Class