Individuare la cella della GridView nella quale si è cliccato
Per individuare la cella di una GridView (così come anche di una TableView) sulla quale si è cliccato con il puntatore del mouse, vi sono almeno due modalità.
1a modalità
La prima modalità prevede l'individuazione ad incrocio del numero d'indice della colonna e quello della riga. Per fare ciò, si utilizzano rispettivamente le proprietà:
GridView1.Column As Integer
e
GridView1.Row As Integer
che verranno poste nella routine dell'evento _Click() della Classe GridView, sollevato nel caso in cui l'utente clicca all'interno di una cella.
Nel semplice esempio che segue, vengono raccolti non solo gli indici della colonna e della riga che definiscono la cella cliccata, ma anche il testo in essa contenuto:
Public Sub Form_Open() With GridView1 .Columns.count = 3 .Rows.Count = 3 End With GridView1[0, 0].Text = "zero e zero" GridView1[0, 1].Text = "zero e uno" GridView1[0, 2].Text = "zero e due" GridView1[1, 0].Text = "uno e zero" GridView1[1, 1].Text = "uno e uno" GridView1[1, 2].Text = "uno e due" GridView1[2, 0].Text = "due e zero" GridView1[2, 1].Text = "due e uno" GridView1[2, 2].Text = "due e due" End Public Sub GridView1_Click() With GridView1 Print " Riga n. "; .Row Print "Colonna n. "; .Column Print "Testo raccolto: "; GridView1[.Row, .Column].Text Print End With End
2a modalità
Le seconda modalità prevede l'acquisizione degli indici della riga e della colonna puntati rispettivamente da una posizione verticale ed orizzontale definita dal cursore del mouse che ha scatenato l'evento clic.
Public Sub GridView1_Click() Dim r, c As Integer r = GVw.RowAt(Mouse.Y) c = GVw.ColumnAt(Mouse.X) Print r;; c End