https://foro.gambas-es.org/viewtopic.php?f=4&t=3405&p=19184#p19184
-----------------------------------
shordi
Jueves, 10 Octobre 2013, 17:54

Re: Adaptar Objetos En Un Formulario Maximizado
-----------------------------------
Respecto a lo de espaciar los objetos, como te dije hay que calcularlo, pero es fácil. 

En el código del proyecto de más arriba en este hilo:

Primero coloca a true la propiedad spacing del vPanel1, SI NO, NO TEFUNCIONARA.

Luego añade éste código:

[code linenumbers=false syntax=gambas]

Public Sub Form_Resize()
  
  Dim naltos, ncuantos As Integer
  Dim hboxhijo As Object
  
  For Each hboxhijo In vPanel1.Children 
    'como es un vpanel, todos los hijos están situados uno encima de otro
    'sumamos pues el alto de cada uno para saber cuanto espacio del alto del panel usan los controles hijos
    naltos += hboxhijo.height                
     'contamos cuantos controles tenemos en vertical (podría valer vPanel1.Children.count, supongo, pero así me parece más claro)
    ncuantos += 1                                
  Next
  'Restamos la suma del alto de los controles hijos al alto del panel. Con eso obtenemos el espacio libre. 
  'Lo dividimos por el número de controles y tenemos el  espacio que debe haber entre control y control a lo alto
  'Asignamos esa cantidad a la propiedad padding del vpanel.
  vPanel1.Padding = (vPanel1.height - naltos) / ncuantos      
                                                                                        
End[/code]

Y ya está, los controles se te espacian regularmente al redimensionar el formulario.

Saludos.


