Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Изменение размеров панелей как в Total Commander [D7, WinXP]


Stive ©   (2005-11-22 23:37:00) 

Здравствуйте форумчане.
Вот уже несколько часов бьюсь над тем, чтобы сделать такую вещь.
При изменении размеров окна Total Commander'a обе панельки с файлами уменьшаются пропорционально. Как можно добиться того же эффекта в свой программе. Уже перепробовал все комбинации Align и Anchors... пока нужной не нашёл.

Как добиться нужного результата? Может кто сталкивался...

Спасибо!


Stive   (2005-11-23 01:13:00) [1]

Всё заработало по совету [1].

 private
   { Private declarations }
   FSpliterPercent: byte;
...
procedure TfmFTP.FormShow(Sender: TObject);
begin
 FSpliterPercent := round(100 / Width * Splitter.Left);
 Splitter.Hint := inttostr(FSpliterPercent) + '%';
end;
...
procedure TfmFTP.SplitterMoved(Sender: TObject);
begin
 FSpliterPercent := round(100 / Width * Splitter.Left);
 Splitter.Hint := inttostr(FSpliterPercent) + '%';
end;
...
procedure TfmFTP.FormResize(Sender: TObject);
begin
 pnRemote.Width := round(Width / 100 * FSpliterPercent);
end;


Stive   (2005-11-23 00:27:00) [2]


> Игорь Шевченко ©   (23.11.05 00:23) [1]

Так и поступлю. Просто бумал, может существует "автоматизированный" способ :-)


Игорь Шевченко   (2005-11-23 00:23:00) [3]


> При изменении размеров окна


Возникает событие OnResize, в котором размеры окна уже новые. Пересчитать размеры дочерних контролов труда ведь не составит, верно ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо