2013-05-03 21 views
0

我有一個標籤數組,我正在使用'Cards_Label(80)',我試圖讓點擊消失。如何使數組的標籤消失?

Private Sub Form1_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseClick 
    For aa As Integer = 0 To 80 
     If MousePosition.X > Cards_Label(aa).Left And MousePosition.Y > Cards_Label(aa).Top Then 
      Cards_Label(aa).Visible = False 
     End If 
    Next 
End Sub 

通過使用這一切,我可以完成的是使整條線消失。感謝您的意見。

+0

由於該位置上的所有卡都符合您的要求(X> Left且Y> Top對於所有這些卡都爲真),因此它將刪除整行。當您將第一張牌設置爲不可見時,您應該退出循環,或者修改您檢查位置的方式。 – 2013-05-03 13:10:08

+0

關閉一個....'爲aa整數= 0到79' – Steve 2013-05-03 13:10:33

+0

那麼,什麼是問題?請更具體一些。 – Neolisk 2013-05-03 15:57:07

回答

0

根據您的需要(其要求不明確),您需要檢查您是否在卡片座標中單擊。按照當前的邏輯,如果您點擊卡右側或下方的任何地方 - 它會被禁用,所以如果您點擊最右下角,所有卡都會被禁用。

Private Sub Form1_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseClick 
    For aa As Integer = 0 To 80 
     If MousePosition.X > Cards_Label(aa).Left And MousePosition.Y > Cards_Label(aa).Top And MousePosition.X < Cards_Label(aa).Width And MousePosition.Y < Cards_Label(aa).Height Then 
      Cards_Label(aa).Visible = False 
     End If 
    Next 
End Sub