2016-01-11 2 views
0

У меня есть консольное приложение на основе Qt, которое должно быть расположено в системном лотке Windows (aka Notification Area).Скрыть консоль Windows, если она сведена к минимуму

Вопрос: как скрыть окно консоли, а не минимизировать его, если пользователь нажимает на значок «Свернуть»? Я знаю метод ShowWindow, но, как я полагаю, я должен называть его асинхронно.

+0

Найти ручку окна окна консоли и скрыть ее –

+0

Программа скроет себя (окно) или другую программу скроет ее? – i486

ответ

-2

Вам необходимо получить оконный дескриптор HWND окна консоли, затем вы можете использовать ShowWindow, чтобы показать или скрыть его обычным способом.

Вопрос, когда вы это делаете? Вы должны знать, когда окно свернуто, чтобы узнать, спрятать его.

Вы можете проверить это периодически, но вы должны быть осторожны, чтобы вы не мешали ноутбукам и т. Д. Спать, делая это.

В качестве альтернативы вы можете установить крючок сообщения или подкласс окна, чтобы получать немедленные уведомления.

Подклассификация окна, вероятно, является лучшим методом.

+0

Привет, что может быть базовым классом и какие методы должны быть переопределены в этом случае? – Moravas

+0

@moravas, это не то, как работает подкласс Окна. Эта технология имеет историю, которая датируется 1985 годом, до того, как C++ широко использовался. Вам нужно найти «подклассы окон». – Ben

+0

Окно консоли - это не ваше среднее окно. Он принадлежит системному процессу CSRSS и [не может быть легко подклассифицирован] (http://stackoverflow.com/q/13371644/1889329). – IInspectable

Смежные вопросы