|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.09.2022, 16:11 | #1 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 627
|
FormResize при запуске программы
При запуске программы от 2 до 4 раз вызывается процедура FormResize
Хотелось бы узнать, на какое действие программа так реагирует? Это при том, что я сделал так, чтобы изначально у формы не было события FormResize, а только в конце выполнения FormCreate присваивается значение событию FormResize Вообще, лично мне нужно, чтобы это происходило ровно 1 раз, потому как в процедуре FormResize по местам расставляются все элементы, адаптируясь под изменение размера окна |
18.09.2022, 16:17 | #2 |
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
Как минимум 1 раз WM_SIZE приходит от Windows после выхода из WM_CREATE. Т.е. после выхода из FormCreate и окончании обработки сообщения WM_CREATE в очереди сообщений уже есть сообщение WM_SIZE, которое и приводит к вызову FormResize. Остальные вызовы FormResize порождаются работой классов Delphi.
|
18.09.2022, 16:31 | #3 | |
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
Цитата:
ADD: Просто интересно, что такого вы расставляете по местам, что требует лимита вызовов. Тем более, что при изменении пользователем размеров окна при помощи мыши FormResize будет вызываться сотни раз, пока пользователь не отпустит рамку окна. Код:
Последний раз редактировалось macomics; 18.09.2022 в 17:16. |
|
18.09.2022, 20:55 | #4 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 627
|
Это скорее чтобы много раз бесцельно не исполнялся один и тот же код, чтобы быстрее шла загрузка окна
|
18.09.2022, 20:58 | #5 |
Участник клуба
Регистрация: 17.04.2022
Сообщений: 1,833
|
Это не повлияет на загрузку. FormResize выполняется после создания всех дочерних окон - загрузка окна к этому моменту уже закончена. Но окно еще не показано.
|
18.09.2022, 21:16 | #6 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,555
|
У вас она тормозит или в чем проблема?
E-Mail: arigato.freelance@gmail.com
|
19.09.2022, 16:20 | #7 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 627
|
Сохранять значения размеров формы и сверять их в начале процедуры - это единственное решение, как сократить кучу лишних действий?
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Есть три программы. Их нужно объеденить в одну, тоесть чтоб при запуске программы были пункты меню для каждой из программ | afirat | Помощь студентам | 9 | 28.04.2012 12:39 |
FormResize 1 раз | xrob | Общие вопросы Delphi | 9 | 28.11.2011 15:46 |
CustomComponent и FormResize | xrob | Компоненты Delphi | 3 | 14.09.2011 15:46 |
Проблема при запуске программы | Neo_AVE | C++ Builder | 0 | 04.05.2011 15:38 |
mp3 при запуске программы - ? | Evgenii | Общие вопросы Delphi | 8 | 12.08.2009 08:11 |