Passare ad un Form un valore diverso da un Intero alla chiusura di un Form secondario

Da Gambas-it.org - Wikipedia.

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