Сообщение окна отправлено в мою самую верхнюю форму / окно, когда над ним находится панель задач / меню «Пуск»? - PullRequest
1 голос
/ 21 января 2012

У меня есть программа C # Windows Forms в Windows 7, но я думаю, что она применима к любой программе Windows.

Основная форма моей программы покрывает весь экран и имеет свойство Topmost.Однако когда я нажимаю клавишу «Пуск», чтобы открыть, например, меню «Пуск», в верхней части формы «Всегда сверху» отображаются панель задач и меню «Пуск».

Есть ли отправленное сообщение окна (WM_)к моей форме / окну, когда это происходит, и моя форма / окно больше не является верхним окном (или поверх Z-порядка)?Я хотел бы поймать его с помощью WndProc.

Спасибо

Ответы [ 2 ]

2 голосов
/ 21 января 2012

Я думаю, что было бы разумно потреблять Раймонда Чена его сообщение в блоге , и хотя это похоже на забавную историю, воспринимайте ее очень, очень серьезно.

Цитата: "Когда две программы«выкинь это» таким образом, вы не можете предсказать, кто из них победит, но вы можете предсказать со 100% уверенностью, кто проиграет: пользователь. "

1 голос
/ 23 января 2012

Как сказал rene в посте выше, это будет условием гонки, если более 1 приложения будут использовать одну и ту же логику, но если вы все еще хотите это сделать, я думаю, что посмотрите на Форма. Деактивированная будет хорошим началом.

...