Предпочтительный способ сохранить контроль сосредоточенным на изменении размера
Вопрос
Как вы предпочитаете, чтобы элементы управления центрировались на его родительском элементе, когда родительский объект изменяет ширину или высоту? Р>
Решение
Если под "по центру" вы имеете в виду "он был уже посередине и вы хотите сохранить его там, не изменяя его размер", то удалите все якоря. Если его нужно изменить, то решение Габра - это то, с чем:)
Другие советы
Установите для свойства Anchors элемента управления значение [akLeft, akTop, akRight, akBottom].
Если вы имеете в виду своего рода "обновление", подождите ... " введите вещь, я вручную переместить его в событие OnResize формы. Это позволяет мне не мешать панели во время проектирования и обычно скрывать ее, но я могу сделать ее видимой при необходимости.
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;