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

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

Некорректное поведение унаследованной формы [D7, WinXP]


scat ©   (2008-03-25 09:37:00) 

Доброго дня!
Проблема в следующем:
В приложении главная форма имеет стиль fsMDIForm. Создаем форму MDForm1, которая  имеет стиль fsMDIChild. Форма MDForm1 в своем конструкторе читает из файла значения положения и размера формы и присваивает эти значения. После завершения работы конструктора форма отображается в том положении и с теми размерами, которые  были считаны,  т.е. правильно отрабатывает. Создаем вторую форму MDForm2 унаследованную от MDForm1, и в приложении запускаем MDForm2, и получаем такой эффект: сначала  прорисовывается MDForm2 форма с размерами и положением согласно свойству Position этой формы, а потом прорисовывается со считанными размерами и получается неприятное мигание. А если запустить MDForm1, то она прорисовывается один раз и сразу со считанными размерами.
Подскажите как это побороть.
За ранее благодарен!


scat   (2008-03-26 01:56:00) [1]

Помогло перекрытие процедуры Docreate в форме MDForm1.  В ней считываем параметры. Мигать перестало.


Игорь Шевченко   (2008-03-25 09:53:00) [2]

А из autocreate убрать лишние формы ?


Сергей М.   (2008-03-25 09:43:00) [3]


> в своем конструкторе читает из файла значения положения
> и размера формы и присваивает эти значения


А надо бы это делать не в конструкторе, а, скажем, в обработчике OnCreate или, на худой конец. в перекрытом методе AfterConctruction


Наверх

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