Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
If e.KeyCode = Keys.Up Then
y -= 5 '假设我们步进单位是5,就是每次移动5象素
ElseIf e.KeyCode = Keys.Down Then
y += 5
ElseIf e.KeyCode = Keys.Left Then
x -= 5
ElseIf e.KeyCode = Keys.Right Then
x += 5
End If
Me.Invalidate()
End Sub
Private bmp As Bitmap
Private x As Integer = 0 '我们的左边界
Private y As Integer = 0 '我们的上边界
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
bmp = New Bitmap(1024, 768)
Dim g As Graphics = Graphics.FromImage(bmp)
Dim str As String = ""
For i As Integer = 0 To 100
For j As Integer = 0 To 100
str += "abcdefg" + vbTab
Next
str += vbCrLf
Next
'生成的字串肯定宽度高度都够了。
g.DrawString(str, New Font("楷体_GB2312", 24), Brushes.Blue, 0, 0)
g.Dispose()
'此时我们在图片上绘制了很多很多文字
End Sub
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
e.Graphics.DrawImageUnscaled(bmp, x, y)
End Sub
End Class