Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.05.20;
Скачать: CL | DM;

Вниз

И снова MDI интерфейс   Найти похожие ветки 

 
RaZEr ©   (2002-05-08 07:40) [0]

Ситуация следующая :

- Есть много MDI Child форм
- Все они с windowstyle wsMaximized

Нужно чтобы по нажатию на определенную кнопку становилась активной (поверх всех) заданная форма .

PS: Я пробовал и Update и Show и традиционный BringToTop, но во всех случаях формы теряли свой wsMaximized :( ... из-за чего приходилось разворачивать формы (В XP это мерцание, а в 98 - вообще лучше не вспоминать что)


 
Alx2 ©   (2002-05-08 08:02) [1]

Попробуй посылать нужному MDIChild сообщение WM_MDIACTIVATE


 
Alx2 ©   (2002-05-08 08:40) [2]

Нет, не катит... Тоже все перерисовывается :(


 
Alx2 ©   (2002-05-08 08:56) [3]

А вот это сработало!

SetWindowPos({Хэндл нужного MDIchildа},HWND_TOP,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE or SWP_NOCOPYBITS);



 
Sasha M.   (2002-05-08 10:26) [4]

А этот вариант, может будет проще?

begin
fmForm.WindowState:=wsNormal;
BringWindowToTop(fmFORM.Handle);
end


 
Lmatveev   (2002-05-08 12:05) [5]

Я использую две функции подряд:

SetForegroundWindow(Form.Handle);
BringWindowToTop(Form.Handle);


 
RaZEr ©   (2002-05-08 17:35) [6]

Блин, Багланд :) Еслиб вы знали в чем было дело :) MyForm.BorderIcons :) . Иными словами нельзя отключать некоторые из них (systemmenu и maximize) . Маразм ...

Если не отключать перечисленные BorderIcons, то работает обычный BringToFront . Напрашивается вопрос : как отключить BorderIcons не отключая их ?! Т.е. чтобы они были, но их небыло видно или они не работали .

Да и вообще пре переключении всеми перечисленными методами заметно мерцание :( а я уверен что можно зделать и без него . Плюс ко всему первое отображение MDI Child формы происходит с ее заметным развертыванием .



Страницы: 1 вся ветка

Текущий архив: 2002.05.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
3-64496
Malyatko
2002-04-22 10:31
2002.05.20
Нужна помощь.


4-64861
Vvedensk
2002-03-15 14:44
2002.05.20
Наверное очень глупый вапрос... Как окно поставить после развертования перед всеми ост окнами..


1-64590
Толик
2002-05-07 14:19
2002.05.20
И снова про копирование файлов, правда теперь по сетке.


14-64822
DeMoN-777
2002-04-11 04:16
2002.05.20
Как узнать на каком языке писалась программа ?


3-64521
Vagabond
2002-04-23 12:16
2002.05.20
Как подключиться к Аксесу?