Я написал приложение WPF на C#, которое я хотел бы показывать каждый раз, когда открывается начальное меню и снова скрывается, когда меню закрыто. Я бы предпочел сделать это без опроса состояния меню «Пуск». До сих пор я пробовал слушать сообщения SHELLHOOK, но я не вижу там ничего полезного.Как я могу обнаружить, когда открывается начальное меню Windows 7
ответ
Я не могу написать вам полный код, но здесь есть логика позади него,
Сначала найдите ручку для панели задач с помощью
[DllImport("user32.dll", SetLastError = true)] public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
также проходят
Shell_TrayWnd
в lpClassNameАктивировать Начало Menu by simulating click button.
Получить дескриптор окна Start Menu
Используйте
GetWindowLong
функцию, чтобы проверить это открыто или нет.
Да, это сработает, если я опрошу. Я бы предпочел не опросить, поэтому я обновлю свой вопрос. – Hemlock
как вы используете GetWindowLong, чтобы проверить, открыто ли меню «Пуск»? –
Я не уверен, что приложение получит высокую оценку пользователей! :) –
Я пользователь, я буду признателен! Я был вынужден использовать Windows, и я предпочел бы быть на Gnome-shell. – Hemlock
Если вы единственный пользователь, тогда почему это имеет значение, если код действительно опроса или нет? – Dialecticus