Differenze tra le versioni di "Creare un Form mediante la Classe Window"

Da Gambas-it.org - Wikipedia.
Riga 1: Riga 1:
 
Poiché l'oggetto ''Form'' appartiene alla categoria dell'oggetto ''Window'', è possibile creare un ''Form'' autonomo semplicemente dichiarando ed istanziando un oggetto ''Window'' per mezzo di una variabile di tipo ''Window'', con la quale sarà anche gestito.
 
Poiché l'oggetto ''Form'' appartiene alla categoria dell'oggetto ''Window'', è possibile creare un ''Form'' autonomo semplicemente dichiarando ed istanziando un oggetto ''Window'' per mezzo di una variabile di tipo ''Window'', con la quale sarà anche gestito.
  
Detti ''Form'' creati mediante la Clase ''Window'' potranno contenere regolarmente degli oggetti.
+
Detti ''Form'' creati mediante la Classe ''Window'' potranno contenere regolarmente degli oggetti.
  
  
Riga 15: Riga 15:
 
     For j = 0 To 4
 
     For j = 0 To 4
 
   
 
   
  <FONT color=#006400>' ''Creiamo un nuovo "Form":''</font>
+
  <FONT color=gray>' ''Creiamo un nuovo "Form":''</font>
 
       With w = New <FONT color=#B22222>Window</font> As "w"
 
       With w = New <FONT color=#B22222>Window</font> As "w"
 
         .W = 300
 
         .W = 300
Riga 21: Riga 21:
 
         .Caption = "num. " & CStr(j)
 
         .Caption = "num. " & CStr(j)
 
         .Background = &111111 * (j + 1000)
 
         .Background = &111111 * (j + 1000)
 +
<FONT color=gray>' ''Per far mostrare la finestra, è assolutamente necessario chiamare la sua funzione ".Show":''</font>
 
         .Show
 
         .Show
 
       End With
 
       End With
 
   
 
   
  <FONT color=#006400>' ''Poniamo su ciascun nuovo "Form" un "Button":''</font>
+
  <FONT color=gray>' ''Poniamo su ciascun nuovo "Form" un "Button":''</font>
 
       creaTasto()
 
       creaTasto()
 
      
 
      
Riga 34: Riga 35:
 
  '''Public''' Sub w_Open()
 
  '''Public''' Sub w_Open()
 
    
 
    
  <FONT color=#006400>' ''Per ogni nuovo "From" creato, che si apre,''
+
  <FONT color=gray>' ''Per ogni nuovo "From" creato, che si apre,''
 
  ' ''ne vediamo in console il nome:''</font>
 
  ' ''ne vediamo in console il nome:''</font>
 
   Print w.Caption
 
   Print w.Caption
Riga 55: Riga 56:
 
   
 
   
 
   
 
   
  '''Public''' Sub bt_Click() <FONT color=#006400>' ''I "Button" presenti sui nuovi "Form" sono regolarmente funzionanti''</font>
+
  '''Public''' Sub bt_Click() <FONT color=gray>' ''I "Button" presenti sui nuovi "Form" sono regolarmente funzionanti''</font>
 
    
 
    
 
   Print "Premuto " & Last.Text
 
   Print "Premuto " & Last.Text
Riga 61: Riga 62:
 
   Wait 2
 
   Wait 2
 
   
 
   
  <FONT color=#006400>' ''Chiudiamo il "Form", individuandolo come "Parent", del "Button" cliccato:''</font>
+
  <FONT color=gray>' ''Chiudiamo il "Form", individuandolo come "Parent", del "Button" cliccato:''</font>
 
   Last.Parent.Close
 
   Last.Parent.Close
 
    
 
    
Riga 82: Riga 83:
 
     .H = 300
 
     .H = 300
 
     .Border = Border.None
 
     .Border = Border.None
  <FONT color=#006400>' ''Carichiamo nell'oggetto di tipo "Window" un'immagine semitrasparente,''
+
  <FONT color=gray>' ''Carichiamo nell'oggetto di tipo "Window" un'immagine semitrasparente,''
 
  ' ''avente ovviamente una parte d'immagine visibile:</font>
 
  ' ''avente ovviamente una parte d'immagine visibile:</font>
 
     .Picture = Picture.Load("''percorso_file_immagine.png''")
 
     .Picture = Picture.Load("''percorso_file_immagine.png''")
  <FONT color=#006400>' ''Impostiamo la proprietà ".Mask" dell'oggetto di tipo "Window" a "True":</font>
+
  <FONT color=gray>' ''Impostiamo la proprietà ".Mask" dell'oggetto di tipo "Window" a "True":</font>
 
     <FONT color=#B22222>.Mask</font> = <FONT color=#B22222>True</font>
 
     <FONT color=#B22222>.Mask</font> = <FONT color=#B22222>True</font>
 
     .Show
 
     .Show

Versione delle 04:17, 28 set 2013

Poiché l'oggetto Form appartiene alla categoria dell'oggetto Window, è possibile creare un Form autonomo semplicemente dichiarando ed istanziando un oggetto Window per mezzo di una variabile di tipo Window, con la quale sarà anche gestito.

Detti Form creati mediante la Classe Window potranno contenere regolarmente degli oggetti.


Nel seguente esempio creeremo diversi Form mediante la Classe Window:

Private w As Window
Private bt As Button


Public Sub Button1_Click()

 Dim j As Byte

   For j = 0 To 4

' Creiamo un nuovo "Form":
     With w = New Window As "w"
       .W = 300
       .H = 200
       .Caption = "num. " & CStr(j)
       .Background = &111111 * (j + 1000)
' Per far mostrare la finestra, è assolutamente necessario chiamare la sua funzione ".Show":
       .Show
     End With

' Poniamo su ciascun nuovo "Form" un "Button":
     creaTasto()
   
   Next

End


Public Sub w_Open()
 
' Per ogni nuovo "From" creato, che si apre,
' ne vediamo in console il nome:
  Print w.Caption
 
End


Public Sub creaTasto()
 
  With bt = New Button(w) As "bt"
    .X = 20
    .Y = 20
    .W = 100
    .H = 40
    .Background = Color.Yellow
    .Text = "Tasto " & w.Caption
  End With
 
End


Public Sub bt_Click() ' I "Button" presenti sui nuovi "Form" sono regolarmente funzionanti
 
  Print "Premuto " & Last.Text

  Wait 2

' Chiudiamo il "Form", individuandolo come "Parent", del "Button" cliccato:
  Last.Parent.Close
 
End


Semitrasparenza di un Form creato con la Classe Window

E' possibile applicare la semitrasparenza anche ad un Form, generato con la Classe Window, (e più in generale la si può applicare ad un oggetto di tipo Window) mediante la medesima modalità prevista per la specifica Classe Form.

Di seguito un semplice esempio:

Private w As Window
 

Public Sub Button1_Click()

  With w = New Window 
    .X = Mouse.ScreenX
    .Y = Mouse.ScreenY
    .W = 300
    .H = 300
    .Border = Border.None
' Carichiamo nell'oggetto di tipo "Window" un'immagine semitrasparente,
' avente ovviamente una parte d'immagine visibile:
    .Picture = Picture.Load("percorso_file_immagine.png")
' Impostiamo la proprietà ".Mask" dell'oggetto di tipo "Window" a "True":
    .Mask = True
    .Show
  End With

End