Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.04.2011, 15:43   #1
mobilitialex
Пользователь
 
Регистрация: 19.05.2009
Сообщений: 40
Смущение Onresize событие

Подскажите аналог события Onresize, у меня компоненты на форме выстраиваются в зависимости от размеров экрана, это задержка перед показом формы, Вопрос как это можно ускорить?
mobilitialex вне форума Ответить с цитированием
Старый 13.04.2011, 16:03   #2
tsar_
Форумчанин
 
Аватар для tsar_
 
Регистрация: 06.01.2011
Сообщений: 369
По умолчанию

И надолго задерживает?
Я правильно понял- меняешь размеры формы, дальше обработка OnResize, где вычисляются координаты нового расположения компонент, оно долго, но уверенно перерисовывает, так?
Программирую по необходимости
tsar_ вне форума Ответить с цитированием
Старый 13.04.2011, 16:57   #3
mobilitialex
Пользователь
 
Регистрация: 19.05.2009
Сообщений: 40
По умолчанию

Я бы не сказал, что долго, но с задержкой, примерно 1-3 сек. При отключении мгновенно грузит.
mobilitialex вне форума Ответить с цитированием
Старый 13.04.2011, 17:13   #4
TzX
Пользователь
 
Аватар для TzX
 
Регистрация: 23.12.2009
Сообщений: 57
По умолчанию

Может процедура которая меняет расположение компонентов на форме не корректно написана? Просто пока вы меняете размер формы это событие вызывается несколько раз...
TzX вне форума Ответить с цитированием
Старый 13.04.2011, 22:35   #5
asmodey1
Подтвердите свой е-майл
 
Регистрация: 19.12.2010
Сообщений: 808
По умолчанию

Правильнее будет в событии OnCreate формы определить разрешение экрана и сразу произвести перерасчет координат для компонентов.
Тогда никакой задержки не будет. А события OnResize и OnPaint вызываются циклически, поэтому и появляется задержка. Можете проверить, установив бряку на первую строку обработчика события и посмотреть, сколько раз он будет вызываться, пока вся форма отрисуется...
asmodey1 вне форума Ответить с цитированием
Старый 13.04.2011, 22:46   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Нужно еще насколько возможно максимально пользоваться свойствами Align и Anhors компонент. Если этого не хватает, одним OnCreate не обойдешься для форм, которым пользователь может размеры менять во время работы.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 14.04.2011, 15:23   #7
mobilitialex
Пользователь
 
Регистрация: 19.05.2009
Сообщений: 40
По умолчанию

в OnCreate не происходит перерисовка
mobilitialex вне форума Ответить с цитированием
Старый 14.04.2011, 15:27   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Сообщение от mobilitialex Посмотреть сообщение
в OnCreate не происходит перерисовка
Речь идет о Left, Top и т.п. для компонент
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 14.04.2011, 21:28   #9
mobilitialex
Пользователь
 
Регистрация: 19.05.2009
Сообщений: 40
По умолчанию

да, просто задаю проценты
mobilitialex вне форума Ответить с цитированием
Старый 14.04.2011, 21:38   #10
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Бросьте код на форум
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AlphaBlend и onResize D][mon Помощь студентам 0 29.09.2010 22:06
Событие OnResize sting1920 Помощь студентам 6 25.02.2010 20:23
onCanResize, onResize Airou Общие вопросы Delphi 3 30.07.2008 15:27
OnResize dbaluch Общие вопросы Delphi 9 11.06.2008 19:14