vb me.controls.remove(.....)不使用任何组件



我目前正在尝试使图片框(播放器(与收藏品进行交互(Diamond1(,并使用me.controls.remove(Diamond1(删除可收集的可收集。

由于某种原因,这不起作用,无论我用什么替换为diamond1。

我还尝试了我。controls.clear((测试控件是否可以工作。这确实有效。

这是下面的代码---

Private Sub DiamondInteraction()
    If Player.Bounds.IntersectsWith(Diamond1.Bounds) Then
        PlayerScore = PlayerScore + DiamondValue
        Label1.BackColor = Color.Red
        Me.Controls.Remove(Diamond1)
    End If
End Sub

在此问题上的任何帮助将不胜感激。

应在直接包含要删除的控件的控件上调用Control.Remove方法。如果控件直接在表单上,则可以执行Me.Controls.Remove(Diamond1)。但是,如果它在面板等容器中,则应进行Panel1.Controls.Remove(Diamond1)

但是,此方法将获得父母的一切(如果您不知道(。

Private Sub RemoveControl(c As Control)
    c.Parent.Controls.Remove(c)
End Sub

用法:

RemoveControl(Diamond1)

最新更新