Минимизируйте любую программу для системного лотка

StackOverflow https://stackoverflow.com/questions/2580821

  •  24-09-2019
  •  | 
  •  

Вопрос

Эй, я пытаюсь сделать программу, которая сводит к минимуму любую программу в системный лоток вместо того, чтобы нормально минимизировать его. Это возможно? Я оглянулся в Google, но не могу ничего не найти.

Это было полезно?

Решение

Значки в системном лотке называются «Иконками Уведомления».

Сделать это с вашим собственным приложением, если вы используете WinForms, вы можете использовать Retifyicon. Класс для отображения значков в системном лотке. Тогда все, что вам нужно сделать, это установить окно не отображаться в панели задач.

Если вы используете WPF, нет замены, вам все равно нужно использовать старые WinForms Notibleicon Class, проверить это MSDN образец Для получения дополнительной информации об этом.


Если вы хотите скрыть другое приложение, то, что вам нужно сделать, это использовать вызовы API, чтобы внести изменения в состояние окна приложений.

Вы можете использовать FindWindow Чтобы получить ручку к окну, которое вы хотите скрыть, то вы можете использовать Getwindowlong. Чтобы получить состояние Windows. Тогда вам нужно удалить Ws_ex_appwindow. флаг из штата и используйте Setwindowlong. Способ применения нового стиля, это удалит его из строки задач. Затем вы можете использовать Получать/SetWindowState. Методы, чтобы узнать состояние окна и скрыть / минимизировать его.

Вам еще нужно просто использовать класс NeetibleCon, чтобы отобразить свой собственный значок в Systray.

Удачи со всеми этого. Это не то, что я пробовал лично, но я использовал все эти связи методом другими способами. Если вы еще не сделали материал API из C #, прежде чем вам может обнаружить, вам нужно сделать немного Googling, чтобы выяснить ваши DLLIMPORTS для методов API версии. Не должно быть ничего слишком тяжело, хотя.


CrazyD22. нашел А. CodeProject Статья Это использует немного другой набор методов API, но достигает в значительной степени того же эффекта. (См. Комментарии ниже.)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top