MFC: сделать диалог всегда над МАЛЫМ КОМПЛЕКТОМ других диалогов - PullRequest
0 голосов
/ 04 октября 2011

Google дает результаты о том, как сделать диалог "всегда сверху" всего.Это не то, что я хочу.

Скажем, у меня огромное количество диалогов.В этой куче диалогов рассмотрим 3 из них - A, B и C.

Я хочу, чтобы C всегда был сверху A и B, но не остальная часть кучи.Другими словами, если C активен, то он должен быть сверху, иначе он будет ниже другого активного диалога, за исключением случаев, когда он включает A и B.

И, кстати, A и B никогда не смогутпоявляются одновременно.

При этом единственный способ, которым мне удалось это сделать, - каждый раз уничтожать C, а затем заново создавать его с новым родителем (A или B, в зависимости от того, ктовиден).Я узнал, что как только дочерние диалоги созданы, право собственности не может быть передано, следовательно, необходимо уничтожить.

Я не могу позволить себе продолжать уничтожать его (долгая история с ним).Другой способ добиться этого?Спасибо!

1 Ответ

0 голосов
/ 04 октября 2011

При этом единственный способ, которым мне удалось это сделать, - каждый раз уничтожать C, а затем заново создавать его с новым родителем (A или B, в зависимости от того, кто виден).

Если у вас есть дескриптор окна C в A или B, как насчет отправки пользовательского сообщения в C, когда вы захотите установить C в качестве TopMost?

...