2008-11-24 7 views

Respuesta

7

Si con 'centrado' quiere decir "ya estaba en el medio y desea mantenerlo allí sin cambiar el tamaño", quite todos los anclajes. Si se debe cambiar el tamaño, la solución de gabr es la siguiente :)

5

Establezca la propiedad Anclas del control en [akLeft, akTop, akRight, akBottom].

+0

Esta es de hecho la manera de hacerlo. –

+0

Esto supone que se permite el cambio de tamaño del control infantil. – Vegar

+0

Sí. La otra respuesta describe el enfoque sin cambio de tamaño. – gabr

0

Si se refiere a una especie de cosa de "actualización, espere ...", la muevo manualmente en el evento OnResize del formulario. Esto me permite mantener un panel fuera del camino durante el diseño y ocultarlo normalmente, pero puedo hacerlo visible cuando sea necesario.

procedure TMyForm.FormResize(Sender: TObject); 
var 
    nNewTop : Integer; 
begin 
    inherited; 
    pnlRegenerating.Left := (ClientWidth - pnlRegenerating.Width) div 2; 
    nNewTop := (ClientHeight div 5) {* 4}; 
    if (nNewTop + pnlRegenerating.Height) > ClientHeight then 
    nNewTop := ClientHeight - pnlRegenerating.Height - 4; 
    pnlRegenerating.Top := nNewTop; 
end; 
Cuestiones relacionadas