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.
 
(Una versione intermedia di uno stesso utente non è mostrata)
Riga 1: Riga 1:
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 di almeno un paio di esempi.  <SUP>&#091;[[#Note|nota 1]]&#093;</sup> <SUP>&#091;[[#Note|nota 2]]|&#093;</sup>
+
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.  <SUP>&#091;[[#Note|nota 1]]&#093;</sup> <SUP>&#091;[[#Note|nota 2]]|&#093;</sup>
  
===1° esempio===
 
 
Nel ''Form'' principale abbiamo un ''Button'' ed il codice:
 
Nel ''Form'' principale abbiamo un ''Button'' ed il codice:
 
  Public Sub Button1_Click()   
 
  Public Sub Button1_Click()   
 
    
 
    
 
   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 22: Riga 21:
 
        
 
        
 
        
 
        
  Public Sub _new(s As String[])   
+
  Public Sub _new(ss As String[])   
 
   
 
   
   ps =
+
   ps = ss
 
   
 
   
 
  End
 
  End
Riga 31: Riga 30:
 
  Public Sub Button1_Click()   
 
  Public Sub Button1_Click()   
 
   
 
   
   ps.Add(ps[0] & " stringa aggiunta")   
+
   ps.Push(ps[0] & " + \e[31mquesta stringa aggiunta")   
 
   
 
   
 
   Me.Close()   
 
   Me.Close()   
 
   
 
   
 
  End
 
  End
 
 
===2° esempio===
 
Nel ''Form'' principale abbiamo un ''Button'' ed il codice:
 
Public Sub Button1_Click() 
 
 
  Dim f As Form1 
 
  Dim s As New String[] 
 
 
  s.Push("Testo qualsiasi") 
 
 
  f = New Form1(s) 
 
 
<FONT color=gray>' ''Un eventuale valore intero ritornato dal Metodo ".ShowModal()" in questo caso non è fondamentale:''</font>
 
  f.ShowModal() 
 
 
  Print "s = "; s['''0'''] 
 
 
End
 
Mentre nel ''Form'' secondario (che chiamiamo ad esempio: ''Form1'') abbiamo un ''Button'' ed il seguente codice:
 
Private ps As New String[] 
 
 
 
 
Public Sub _new(s As String[]) 
 
 
  ps = ps.Insert(s)
 
 
End
 
 
 
Public Sub Button1_Click() 
 
 
  Me.Close() 
 
 
End
 
 
  
  

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