![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 01.09.2009
Сообщений: 151
|
![]()
Здравствуйте.
Есть такая проблема: Имеется MDI-окно, на которой располагаются несколько дочерних окон. Всем окнам выставлены св-ва WindowState := wsMaximized и BorderIcons := []; Это сделано для того, что бы пользователь не мог закрыть окно кроме как через специальную кнопку. НО! Когда юзер жмёт на эту кнопку, что бы закрыть одно из окон, то происходит размещение каскадом всех остальных открытых окон. (При этом, если не трогать BorderIcons, то оставшиеся окна каскадом не располагаются). Беглое исследование показало, что максимизированные окна располагаются каскадом, когда изменяется значение BorderIcons. Если принудительно разворачивать оставшиеся окна после закрытия нужного окна, то происходит неприятное мерцание. Подскажите пожалуйста, как можно закрыть максимизированное дочернее окно (без системных кнопок) либо, что бы оставшиеся окна оставались в состоянии wsMaximized, либо что бы моргание было не таким заментым. Заранее спасибо! |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 01.09.2009
Сообщений: 151
|
![]()
После некоторых изысканий удалось выяснить, что такое поведение формы происходит из-за того, что во время присвоения св-ву BorderIcons нового значения происходит вызов ф-ции RecreateWnd, которая пересоздаёт окно. При этом теряется значение св-ва WindowState.
Полностью победить проблему не удалось, но получилось её "обезвредить", путём перекрытия события дочерней формы WM_SYSCOMMAND следующим образом: Код:
Может быть кто-нибудь может подсказать, перекрытием какого события можно спрятать эти самые системные кнопки дочернего окна? |
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Самопроизвольно закрывается форма после выполнения процедуры | nitroG | Помощь студентам | 5 | 04.05.2010 08:20 |
Стиль MDIChild | Dr.Badnezz | Общие вопросы Delphi | 0 | 05.04.2010 16:54 |
MdiChild | Farhod | Общие вопросы .NET | 3 | 01.04.2010 16:50 |
Mdichild приложение | SeregaKo | Общие вопросы Delphi | 7 | 28.03.2009 00:55 |
Закрытие формы MDIChild в MDI приложении | Avalonix | Общие вопросы Delphi | 4 | 29.05.2008 16:45 |