Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.20;
Скачать: CL | DM;

Вниз

OnResize событие   Найти похожие ветки 

 
Юрий   (2003-03-05 15:49) [0]

Следующий баг:
На панели ( с Align caTop ) лежат слева КомбоБох и справа Баттон, занимая практически всю панель по длине. По событию ОнРисайз, когда меняется ширина формы и соответственно панели, ширина КомбоБоха и расположение Баттона должны меняться, чтобы опять занимать по ширине всю панель. Пишу следующий для этого код:

procedure TfSearch.KOLForm1Resize(Sender: PObj);
begin
button.Left := panelTop.Width - 60;
combobox.Width := panelTop.Width - 70;
end;

Если изменяю ширину при помощи мышки, рястягивая и сужая форму, то всё нормально, код работает. Если кликаю мышкой на форме ( на БордерИконз - Maximize, Restore Down после Maximize ), то код не отрабатывается. После Maximize ширина КомбоБоха и расположение Баттона остаются прежними, а после Restore Down Баттон вообще оказывается за пределами формы. Ширина формы 608, ширина КомбоБоха 530, ширина Баттона 55 вначале работы программы.


 
Kladov   (2003-03-05 21:06) [1]

OnMinimize / OnRestore -> вызвать обработчик OnResize


 
Юрий   (2003-03-06 15:50) [2]

"OnMinimize / OnRestore -> вызвать обработчик OnResize"

Не правильнее ли, чтобы это уже было изначально прописано ( в KOL.PAS модуле, как я полагаю ), ведь изменение размеров формы происходит в этих двух случаях?


 
Юрий   (2003-03-06 15:54) [3]

Самое интересное, что ничего не поменялось после добавления кода:

"procedure TfSearch.KOLForm1Maximize(Sender: PObj);
begin
KOLForm1Resize(Form);
end;

procedure TfSearch.KOLForm1Restore(Sender: PObj);
begin
KOLForm1Resize(Form);
end;"

Я что-то делаю не так?


 
Kladov   (2003-03-06 19:40) [4]

У вас что-то не так с самого начала происходит. Вот я написал событие

procedure TForm1.KOLForm1Resize(Sender: PObj);
begin
Button2.Top := Form.ClientHeight - Button2.Height - 10;
ListView1.Height := Button2.Top - ListView1.Top - 8;
end;


И оно срабатывает в том числе и при максимизации-восстановлении окна.

Может, надо прицепиться к OnResize не формы, а родительской панели?


 
Юрий   (2003-03-06 20:06) [5]

"Может, надо прицепиться к OnResize не формы, а родительской панели?"

В этом случае работает нормально, хотя немного странно, почему к событию панели нужно прицепляться, а к событию формы не получается.


 
Kladov   (2003-03-06 21:27) [6]

панель выровнена. ее изменение размеров происходит после того как отрабатывает OnResize формы.



Страницы: 1 вся ветка

Текущий архив: 2003.11.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
1-65978
UNick
2003-11-10 15:46
2003.11.20
Как узнать размер папки?


7-66136
Ig
2003-09-13 14:17
2003.11.20
Bios


14-66086
Mike Kouzmine
2003-10-15 17:08
2003.11.20
---|Ветка была без названия|---


3-65714
Sava
2003-11-03 13:48
2003.11.20
Типы данных InterBase?


1-65934
BlackKing
2003-11-11 12:39
2003.11.20
Как определить, есть ли у компонента заданная функция?