Differenze tra le versioni di "Passare ad un Form un valore diverso da un Intero alla chiusura di un Form secondario"

Da Gambas-it.org - Wikipedia.
Riga 21: Riga 21:
  
 
Mentre nel ''Form'' secondario (che chiamiamo ad esempio: ''Form1'') abbiamo un Button ed il seguente codice:
 
Mentre nel ''Form'' secondario (che chiamiamo ad esempio: ''Form1'') abbiamo un Button ed il seguente codice:
  '''Private''' ps As String[]   
+
  Private ps As String[]   
 
        
 
        
 
        
 
        

Versione delle 10:42, 8 giu 2017

Nel caso si debba passare ad un Form principale un valore diverso da un Intero all'atto della chiusura di un Form secondario, potrà essere utile l'indicazione del seguente esempio. |Nota 1| |Nota 2|


Nel Form principale abbiamo un Button ed il codice:

Public Sub Button1_Click()  
 
 Dim f As Form1  
 Dim s As New String[]  
 
  s.Add("Testo qualsiasi")  
 
  f = New Form1(s)  
 
' Un eventuale valore intero ritornato dal metodo ".ShowModal" in questo caso non è fondamentale:  
  f.ShowModal()  
 
  Print "s = "; s[1]  
 
End


Mentre nel Form secondario (che chiamiamo ad esempio: Form1) abbiamo un Button ed il seguente codice:

Private ps As String[]  
     
     
Public Sub _new(s As String[])  
      
   ps = s  
      
End
     
     
Public Sub Button1_Click()  
     
   ps.Add(ps[0] & " stringa aggiunta")  
      
   Me.Close()  
     
End


Note

[1] Riprendiamo il codice da questa discussione del forum: http://www.gambas-it.org/smf/index.php?topic=1312

[2] In realtà la modalità, descritta in questa pagina, va bene anche per tipi di valori numerali (come ad esempio l'Intero).