我正在创建一个游戏,如果用户在键盘上按下某个键,图片框将从特定方向移动。当用户按下箭头键时,我创建了一个处理Picturebox运动的类。这是这一点,但在PictureBox不向右移动当我实例化它的形式时,PictureBox不会在KeyDown上移动
Public Class movement
Public Function right() As Action
Dim myform As New Form3()
myform.PictureBox1.Left += 1
Return right
End Function
End Class
++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++
Public Class Form3
Public Sub Form3_KeyDown1(sender As Object, e As KeyEventArgs) Handles Me.KeyDown
Dim r As New movement
Select Case e.KeyCode
Case Keys.Right
r.right()
End Select
End Sub
End Class
但当我致电Form3直接在班级运动,图片框从右侧移动。我实例化表单的原因是因为我将使用不同形式的一些框架或大量图片框。
Public Class movement
Public Function right() As Action
Form3.PictureBox1.Left += 1
Return right
End Function
End Class
您每次在按键关闭时都会创建一个'Form3'的新实例,但是您并未显示它。 – dbvega 2015-03-13 06:52:47
那么,代码应该是什么样的我没有一个想法 – 2015-03-13 07:02:43
如果你想要移动一个'图片框'在外部'窗体'你需要有一个'窗体'的实例存储,例如在一个私人领域。 – dbvega 2015-03-13 07:21:02