1

我想我会做一个非常简单的fps游戏。我有所有的图形,但我只有一个错误。

错误是您可以通过单击按钮将敌人生成到游戏中。使用该按钮,您可以在游戏中生成任意数量的敌人。为此,我编写了以下内容:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  Dim enemy As New PictureBox
  enemy.Image = My.Resources.enemy.png
  Me.Controls.Add(enemy)
End Sub

但是,要射击敌人,您必须单击它,我不确定如何实现这一点,因为在程序启动并单击按钮之前,“敌人”变量实际上并不在表单上。

我已经尝试过了,但它并没有给我带来任何成功:

Private Sub Enemy_Click(sender As Object, e As EventArgs) Handles enemy.Click
4

1 回答 1

1

您必须自己添加事件处理程序:

Dim enemy As New PictureBox
enemy.Image = My.Resources.enemy.png
AddHandler enemy.Click, AddressOf Enemy_Click
Me.Controls.Add(enemy)

在 clicked 方法方面,您将获得发送者对象单击了哪个 PictureBox:

Private Sub Enemy_Click(sender As Object, e As EventArgs)
  Dim pb As PictureBox = sender
  // do stuff
End Sub
于 2013-10-30T15:13:55.310 回答