Деактивация MDI CHILD
От: dandreev Россия  
Дата: 19.11.01 09:40
Оценка:
Кто нибудь знает корректные пути повторить следующую функциональность?

Требуется — в "ручную" отключить command routing для активного MDI child окна,
и сделать его заголовок серым.
Такая функциональность есть например в Visual Basic 6 или Interdev.
Когда пользоватьель щелкает по toolbar с properties активное MDI child окно становится неактивным.

Сейчас я сделал крайне криво — создается невидимый MDI child фрейм и если control на toolbar получает фокус, то сначала он активирует это окно, а затем
опять себя.
Есть крайне неприятный минус в этом решении — При maximized MDI окнах получение фокуса контрола на toolbar все их опять каскадирует, и это естественно потому как у fake MDI фрейма стиль WS_OVERLAPPED. Да и двойной приход к контролу WM_SETFOCUS (второй раз сам себе) череват проблемами.

Вообще хотелось бы избавиться от этого окна... но работа с MDI это всего менее десятка messages из Winuser.h.. других средств я не знаю.

Может есть какие нибудь идеи по этому поводу (я уж не говорю про решения, хоть натолкнете меня на мысль какую)?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.