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 5: Riga 5:
 
    
 
    
 
   Dim f As Form1   
 
   Dim f As Form1   
   Dim s As New String[]   
+
   Dim ss As New String[]   
 
    
 
    
   s.Push("Testo qualsiasi")   
+
   ss.Push("Testo qualsiasi")   
 
    
 
    
   f = New Form1(s)   
+
   f = New Form1(ss)   
 
    
 
    
 
  <FONT color=gray>' ''Un eventuale valore intero ritornato dal Metodo ".ShowModal()" in questo caso non è fondamentale:''</font>
 
  <FONT color=gray>' ''Un eventuale valore intero ritornato dal Metodo ".ShowModal()" in questo caso non è fondamentale:''</font>
 
   f.<FONT color=red>ShowModal()</font>   
 
   f.<FONT color=red>ShowModal()</font>   
 
    
 
    
   Print "s = "; s['''1''']   
+
   Print "ss = "; s['''1''']   
 
    
 
    
 
  End
 
  End
Riga 21: Riga 21:
 
        
 
        
 
        
 
        
  Public Sub _new(s As String[])   
+
  Public Sub _new(ss As String[])   
 
   
 
   
   ps =
+
   ps = ss
 
   
 
   
 
  End
 
  End
Riga 30: Riga 30:
 
  Public Sub Button1_Click()   
 
  Public Sub Button1_Click()   
 
   
 
   
   ps.Push(ps[0] & " + stringa aggiunta")   
+
   ps.Push(ps[0] & " + \e[31mquesta stringa aggiunta")   
 
   
 
   
 
   Me.Close()   
 
   Me.Close()   

Versione attuale delle 05:36, 22 lug 2024

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 seguente esempio. [nota 1] [nota 2|]

Nel Form principale abbiamo un Button ed il codice:

Public Sub Button1_Click()  
 
 Dim f As Form1  
 Dim ss As New String[]  
 
 ss.Push("Testo qualsiasi")  
 
 f = New Form1(ss)  
 
' Un eventuale valore intero ritornato dal Metodo ".ShowModal()" in questo caso non è fondamentale:
 f.ShowModal()  
 
 Print "ss = "; 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(ss As String[])  

 ps = ss

End


Public Sub Button1_Click()  

 ps.Push(ps[0] & " + \e[31mquesta 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).