![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 09.10.2010
Сообщений: 124
|
![]()
КАК свернуть программу в трей в Delphi 10? Хотел установить компонент TCoolTrayIcon, но он на 6 и7 версию, а как в 10 свернуть в трей.
Заранее спасибо |
![]() |
![]() |
![]() |
#2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
А ручками ?
Вот, нашел для вас у себя в архиве: Для работы со значками в трее используется функция Shell_NotifyIcon, объявленная в модуле ShellApi. Объявим следующую процедруру: Параметры к ней такие: n - номер операции ( 1 - добавить, 2 - удалить, 3 - заменить) и Icon - сама иконка с которой будет делаться эта операция Код:
Код:
Попробуем, например, выбрать из системного меню команду Minimize или нажать на кнопку окна в панели задач, и что же? Не срабатывает! Поэтому, нам нужно ещё переопределить обработчик onMinimize класса TApplication: Код:
Код:
Теперь нам нужно, чтобы значок в трее мог реагировать на манипуляции с ним. Если Вы внимательно посмотрите процедру Ic(), то Вы увидите там ссылку на сообщение WM_USER+1. Это не что иное, как сообщение, которое приходит нам от этого значка. Обычно для значка в трее делают всплывающее меню и выводят там те или иные действия. Но TPopUpMenu делается обычно для правой кнопки, по левой же просто активируют приложение. На форму кидаем комопонент TPopUpMenu (пусть это будет PopUpMenu1) и заносим в него все пункты меню, которые мы хотим, чтобы онм появилис в меню, которое будет всплывать по нажатию правой кнопки на значке. После этого описываем обработчик: В вышеназванную секцию protected добавляем ещё одну процедуру IconMouse, которая будет реагировать на сообщение WM_USER+1 Код:
Код:
Данный опус писался только в форме, в IDE не тестировался, но работоспособный на 100%. Всё работает конечно, но не обессудьте, если будут ошибочки мелкие. Попробуйте у себя на десятке. |
![]() |
![]() |
![]() |
#3 |
Участник клуба
Регистрация: 28.07.2009
Сообщений: 1,510
|
![]()
В Delphi 2010 уже есть встроенный компонент TTrayIcon
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 09.10.2010
Сообщений: 124
|
![]() |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Свернуть чужую программу в трей | grafgrial | Общие вопросы Delphi | 6 | 18.06.2010 19:27 |
Как свернуть программу в трей !!! | Football_lady | Общие вопросы Delphi | 1 | 06.02.2010 19:46 |
Свернуть в трей | Nice42ru | Помощь студентам | 1 | 05.02.2010 17:02 |
Как свернуть прогу в трей | Ярослав | Помощь студентам | 1 | 16.12.2007 06:27 |