Differenze tra le versioni di "Individuare la cella della GridView nella quale si è cliccato"

Da Gambas-it.org - Wikipedia.
Riga 1: Riga 1:
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à.
+
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 tre modalità.
  
  
 
===1<SUP>a</sup> modalità===
 
===1<SUP>a</sup> 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à:
+
La prima modalità prevede l'individuazione ''ad incrocio'' del numero d'indice della colonna e quello della riga.
 +
<BR>Per fare ciò, si utilizzano rispettivamente le Proprietà:
 
  GridView1.Column As Integer
 
  GridView1.Column As Integer
 
e
 
e
 
  GridView1.Row As Integer
 
  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.  
+
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 attraverso la Proprietà ".Current.Text".
+
Esempio pratico:
 +
Public Sub Form_Open()
 +
 +
  With GridView1 
 +
    .Columns.count = 3 
 +
    .Rows.Count = 3 
 +
  End With
 +
 +
End
 +
 +
 +
Public Sub GridView1_Click()
 +
 +
  GridView1[GridView1.Row, GridView1.Column].Background = Color.Red
 +
 +
End
 +
 
 +
 
 +
===2<SUP>a</sup> modalità===
 +
Le seconda modalità prevede l'uso della Proprietà ".Current" della Classe ''GridView''.
 +
 
 +
Nell'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 attraverso la Proprietà ".Current.Text".
 
  Public Sub Form_Open()
 
  Public Sub Form_Open()
 
   
 
   
Riga 34: Riga 56:
 
  Public Sub GridView1_Click()   
 
  Public Sub GridView1_Click()   
 
   
 
   
   With GridView1
+
   Print "Testo raccolto: "; GridView1.Current.Text   
    Print "  Riga n. "; .Row
 
    Print "Colonna n. "; .Column
 
 
    Print "Testo raccolto: "; GridView1.Current.Text   
 
    Print
 
  End With
 
 
   
 
   
 
  End
 
  End
Riga 46: Riga 62:
  
  
===2<SUP>a</sup> modalità===
+
===3<SUP>a</sup> 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.
+
La terza 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_MouseUp()
 
  Public Sub GridView1_MouseUp()
 
   
 
   

Versione delle 05:26, 10 ago 2024

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 tre 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.

Esempio pratico:

Public Sub Form_Open()

 With GridView1  
   .Columns.count = 3  
   .Rows.Count = 3  
 End With

End


Public Sub GridView1_Click()

 GridView1[GridView1.Row, GridView1.Column].Background = Color.Red

End


2a modalità

Le seconda modalità prevede l'uso della Proprietà ".Current" della Classe GridView.

Nell'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 attraverso la Proprietà ".Current.Text".

Public Sub Form_Open()

 With GridView1  
   .Columns.count = 3  
   .Rows.Count = 3  
 End With  
 
 GridView1[0, 0].Text = "zero e zero"
 GridView1.Columns[0].Width = -1      ' [nota 1]
 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.Columns[1].Width = -1
 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()  

 Print "Testo raccolto: "; GridView1.Current.Text  

End


3a modalità

La terza 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_MouseUp()

 Dim r, c As Integer
 
 r = GridView1.RowAt(Mouse.Y)
 c = GridView1.ColumnAt(Mouse.X)

 Print r, c

End


Note

[1] Vedere questa pagina: Adattare automaticamente l'altezza e la larghezza di una cella di una GridView al testo contenuto