![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблемы с wsMaximized для MDIChildForm [D7]
Giperon © (2007-07-13 15:29:00)Здравствуйте!
В моей программе использован MDI.
Нажатие на кнопку открывает дочернее окно, для которого удобно применить
WindowsState := wsMaximized
для того, чтобы дочерняя форма создавалась максимизированной.
Создается, все хорошо, но в момент создания возникает неприятный эффект мерцания - форма создается, очевидно, с wsNormal, а потом лишь развертывается на всю клиентскую область.
Если кто-то сталкивался с подобным, подскажите, как устранить сей неприятный эффект.
Giperon (2007-07-18 12:04:00) [1]Спасибо,я все понял.
Теперь я делаю так:
В дизайнере ставлю для дочерней формы
WindowState = wsMinimazed
А потом в коде кнопки, открывающей эту форму:
NewForm := TNewForm.Create(Application);
NewForm.WindowState := wsMaximized;
NewForm.Show;
Теперь эффект значительно поутих.
А причина, скорее всего - в слабеньком компе:)
Shamansky_ne (2007-07-14 15:45:00) [2]
> Giperon © (13.07.07 15:42) [2]
> Именно так я и делаю. И в дизайнере, и в ОнКреате - одинаково.
> :(
Процесс создания окна ведь такой:
1. создали окошко;
1.a здесь можешь производить с окном разные манипуляции;
2. показали окошко;
Ты немного путаешь, эффект мерцания у тебя происходит при прорисовке дочернего окна, а это уже удет после создания, то есть windowsState здесь уже не причем, может у тебя стоит какая-нибудь громоздкая операция на onShow или onPaint?
Giperon (2007-07-13 15:42:00) [3]Именно так я и делаю. И в дизайнере, и в ОнКреате - одинаково. :(
{RASkov} (2007-07-13 15:33:00) [4]> [0] Giperon © (13.07.07 15:29)
Выставь в дизайнере или в ОнКреате стиль Макс....