Differenze tra le versioni di "Riposizionare in modo circolare più oggetti posti in pila"

Da Gambas-it.org - Wikipedia.
Riga 1: Riga 1:
Il caso è quello in cui, dopo aver posizionato all'interno di un qualsiasi contenitore uno sull'altro diversi oggetti, si procede a riposizionarli in modo circolare. L'oggetto posto in cima agli altri passerà in fondo alla pila degli oggetti.
+
Il caso è quello in cui, dopo aver posizionato all'interno di un qualsiasi Contenitore uno sull'altro diversi Oggetti grafici, si procede a riposizionarli in modo circolare. L'Oggetto grafico posto in cima agli altri passerà in fondo alla pila degli Oggetti.
 
 
  
 
Nell'esempio, che segue, abbiamo quattro ''Button'' di diverso colore, posti uno sull'altro. Cliccando sul ''Button'' presente in quel momento in cima alla pila, esso verrà posto in fondo agli altri portando così in cima quello immediatamente sottostante:
 
Nell'esempio, che segue, abbiamo quattro ''Button'' di diverso colore, posti uno sull'altro. Cliccando sul ''Button'' presente in quel momento in cima alla pila, esso verrà posto in fondo agli altri portando così in cima quello immediatamente sottostante:
Riga 6: Riga 5:
 
   
 
   
 
   Dim bt As Button
 
   Dim bt As Button
   Dim j As Byte
+
   Dim b As Byte
 
    
 
    
 
    
 
    
   For j = 0 To 3
+
   For b = 0 To 3
 
     With bt = New Button(Me) As "bt"
 
     With bt = New Button(Me) As "bt"
 
     .X = 20
 
     .X = 20
Riga 16: Riga 15:
 
     .H = 50
 
     .H = 50
 
     .Foreground = Color.Yellow
 
     .Foreground = Color.Yellow
     .Text = Str(j)
+
     .Text = Str(b)
     .Background = Color.RGB(200 / (j + 1), 70 * j, 50 * j)
+
     .Background = Color.RGB(200 / (b + 1), 70 * b, 50 * b)
 
     End With
 
     End With
 
   Next
 
   Next
 
      
 
      
 
  '''End'''
 
  '''End'''
 
 
   
 
   
 
  '''Public''' Sub bt_MouseDown()
 
  '''Public''' Sub bt_MouseDown()
 
    
 
    
  <FONT color=gray>' ''Il metodo ".Lower()" pone l'oggetto al livello più basso''
+
  <FONT color=gray>' ''Il metodo ".Lower()" pone l'oggetto al livello più basso nella gerarchia dei Controlli appartenenti al medesimo "Genitore":''</font>
' ''nella gerarchia degli oggetti appartenenti al medesimo genitore:''</font>
 
 
     Last<FONT color=#B22222>.Lower</font>
 
     Last<FONT color=#B22222>.Lower</font>
 
   
 
   
 
  '''End'''
 
  '''End'''

Versione delle 09:00, 14 giu 2023

Il caso è quello in cui, dopo aver posizionato all'interno di un qualsiasi Contenitore uno sull'altro diversi Oggetti grafici, si procede a riposizionarli in modo circolare. L'Oggetto grafico posto in cima agli altri passerà in fondo alla pila degli Oggetti.

Nell'esempio, che segue, abbiamo quattro Button di diverso colore, posti uno sull'altro. Cliccando sul Button presente in quel momento in cima alla pila, esso verrà posto in fondo agli altri portando così in cima quello immediatamente sottostante:

Public Sub Form_Open()

 Dim bt As Button
 Dim b As Byte
 
 
  For b = 0 To 3
   With bt = New Button(Me) As "bt"
    .X = 20
    .Y = 20
    .W = 50
    .H = 50
    .Foreground = Color.Yellow
    .Text = Str(b)
    .Background = Color.RGB(200 / (b + 1), 70 * b, 50 * b)
   End With
  Next
   
End

Public Sub bt_MouseDown()
 
' Il metodo ".Lower()" pone l'oggetto al livello più basso nella gerarchia dei Controlli appartenenti al medesimo "Genitore":
   Last.Lower

End