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

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

Движение формы и Resize [D5, Win2k]


Андрусь ©   (2002-06-25 12:30:00) 

Уважаемый народ! Таких 2 вопроса. Как ловить движение формы. Почему событие OnResize возникает при отображении формы и что делать с этим.
Спасибо.


Внук   (2002-06-25 14:13:00) [1]

Андрусь (25.06.02 13:50)
Посмотрите на сайте Анатолия Подгорецкого, там много интересного: www.podgoretsky.com


Игорь Шевченко   (2002-06-25 14:13:00) [2]

Андрусь (25.06.02 13:50)

Книжка полезная. В сети в электронном виде где-то лежит. Адреса дать не могу - не помню


Андрусь   (2002-06-25 13:50:00) [3]

>Внук
Обидно,что такой книжки у меня нет :}


Kaban   (2002-06-25 13:47:00) [4]

Чего непонятного?
Создается форма, устанавливаются ее размеры, она помещается в определенное место экрана. Отсюда и сообщения. Абсолютно нормальное поведение.


Внук   (2002-06-25 13:45:00) [5]

В книге Петзольда "Программирование для Windows 95" очень подробно это описано, мне понравилось


Андрусь   (2002-06-25 13:40:00) [6]

>Игорь Шевченко
Просто интерестно,чего этот месседж идет при создании и отображении. Для интереса ставлю проверку в обработчик мессежа FormState и что интерестно сразу идет fsCreating,затем следующий fsShowing..
Если не лень удовлетворите любопытство. Спасибо.


Игорь Шевченко   (2002-06-25 13:25:00) [7]

Андрусь (25.06.02 13:01)


> Только чего он при создании и отбражении возникает


Стандартное поведение Windows.
Мешать не должно.


Wild   (2002-06-25 13:23:00) [8]

Ну если уж совсем не хочется работать ручками, то можно и так (да простит меня мой препод):
На FormShow повесить установку глобального флага (isShow) и на OnResize проверять это состояние. Если оно установлено, то не обрабатывать и наооборот. В конце обработчика OnResize, в любом случае, сбрасывать флаг.


Андрусь   (2002-06-25 13:01:00) [9]

Спасибо! Только чего он при создании и отбражении возникает. Мне нужен обработчик только на сами события.
С уважением,


Игорь Шевченко   (2002-06-25 12:38:00) [10]

Событие OnResize возникает при обработке сообщения WM_SIZE. При создании окна это сообщение всегда ему посылается.
Движение формы можно поймать обработкой сообщения WM_MOVE или WM_WINDOWPOSCHANGING/WM_WINDOWPOSCHANGED

С уважением,


Наверх

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