Differenze tra le versioni di "Effettuare una ricerca nelle celle di una GridView"

Da Gambas-it.org - Wikipedia.
(Creata pagina con "Per effettuare una ricerca se un testo sia presente all'interno di una cella della ''GridView'', potremo utilizzare un algoritmo del genere (poniamo il caso di avere una sempl...")
 
 
(2 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
Per effettuare una ricerca se un testo sia presente all'interno di una cella della ''GridView'', potremo utilizzare un algoritmo del genere (poniamo il caso di avere una semplice ''GridView'' composta da due righe e due colonne. Ogni cella contiene una parola):
+
Per effettuare una ricerca se un testo sia presente all'interno di una cella della ''GridView'', potremo utilizzare un algoritmo del genere:
 
  '''Public''' Sub GridView1_GotFocus()   
 
  '''Public''' Sub GridView1_GotFocus()   
 
      
 
      
   Dim j, k As Byte 
+
   Dim r, c As Integer
 
   Dim s As String   
 
   Dim s As String   
 
    
 
    
  s = InputBox("Immetti la parola da cercare:")   
+
  s = InputBox("Immetti la parola da cercare:")   
 
    
 
    
  <FONT color=#006400>' ''Inizia il doppio ciclo per leggere tutte le celle della "GridView":''</font>
+
  <FONT color=gray>' ''Inizia il doppio ciclo per leggere tutte le celle della "GridView":''</font>
    For j = 0 To
+
  For r = 0 To GridView1.Rows.Max
      For k = 0 To
+
    For c = 0 To GridView1.Columns.Max
  <FONT color=#006400>' ''In questo esempio se il testo presente nella corrente cella è simile''
+
  <FONT color=gray>' ''In questo esempio, se il testo presente nella corrente cella è identico a quello immesso nell'InputBox per la ricerca...''</font>
' ''(non necessariamente identico) a quello immesso nell'InputBox per la ricerca...''</font>
+
      If GridView1[r, c].Text = s Then   
        If GridView1[j, k].Text Like s & "*" Then   
+
  <FONT color=gray>' ''...allora ci si posiziona nella corrente cella:''</font>
  <FONT color=#006400>' ''...allora ci si posiziona nella corrente cella, la quale viene anche evidenziata...:''</font>
+
        With GridView1   
          With GridView1   
+
          .MoveTo(r, c)   
            .MoveTo(j, k)   
+
          .ShowCursor = True   
            .ShowCursor = True   
+
        End With
          End With
+
  <FONT color=gray>' ''La cella viene anche totalmente evidenziata in giallo:''</font>
  <FONT color=#006400>' ''...e si esce quindi dal ciclo, perché abbiamo trovato la parola simile a quella immessa nell'InputBox:''</font>
+
        GridView1[r, c].Background = Color.Lighter(Color.Yellow)
          Exit   
+
<FONT color=gray>' ''Quindi si esce quindi dal ciclo, perché è stata trovata la parola:''</font>
        Endif
+
        Exit   
      Next  
+
      Endif   
 
     Next   
 
     Next   
 +
  Next 
 
    
 
    
 
  '''End'''
 
  '''End'''

Versione attuale delle 12:24, 6 ott 2019

Per effettuare una ricerca se un testo sia presente all'interno di una cella della GridView, potremo utilizzare un algoritmo del genere:

Public Sub GridView1_GotFocus()  
   
 Dim r, c As Integer
 Dim s As String  
  
 s = InputBox("Immetti la parola da cercare:")  
  
' Inizia il doppio ciclo per leggere tutte le celle della "GridView":
 For r = 0 To GridView1.Rows.Max
   For c = 0 To GridView1.Columns.Max
' In questo esempio, se il testo presente nella corrente cella è identico a quello immesso nell'InputBox per la ricerca...
     If GridView1[r, c].Text = s Then  
' ...allora ci si posiziona nella corrente cella:
       With GridView1  
         .MoveTo(r, c)  
         .ShowCursor = True  
       End With
' La cella viene anche totalmente evidenziata in giallo:
       GridView1[r, c].Background = Color.Lighter(Color.Yellow) 
' Quindi si esce quindi dal ciclo, perché è stata trovata la parola:
       Exit  
     Endif  
   Next  
 Next  
 
End