| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: WinAPI и системное программирование > Свернуть прогу в Tray |
| Автор: brick-rs 20.5.2004, 05:31 |
| как сей сабж реализовать, кстати в факе щелкал по ссылке выходит: Object not found! |
| Автор: jonik_Dk 20.5.2004, 09:31 |
| Есть компоненты Rx. Компонентик RxTrayIcon кидаешь минимум настроек и все работает. |
| Автор: brick-rs 20.5.2004, 09:56 |
| минумиум настроек сделал, но заблудился в ссылках, как отловить минимизацию окна? Нешел следующее: >>"Обработка сообщения WM_SYSCOMMAND (перехват минимизации окна)" >>Procedure TMain.WMGetSysCommand(var Message : TMessage) ; >>Begin >>IF (Message..wParam = SC_MINIMIZE) >>Then Main.Visible:=False >>Else Inherited; >>End; где это и куда это? |
| Автор: p0s0l 20.5.2004, 16:16 | ||
|
| Автор: Cyber_Master 20.5.2004, 16:20 |
| Это всё хорошо, но как вызывать контекстное меню по правой кнопке мыши на иконке в Трее ? |
| Автор: functionario honorifico 20.5.2004, 16:26 |
| При вызове Sell_NotifyIcon ты передаёшь ей идентификатор колбэк-сообщения. Соответственно в его обработчике if Msg.lParam = WM_RBUTTONDOWN then begin GetCursorPos(P); PopupMenu.Popup(P.X, P.Y); end; |
| Автор: p0s0l 20.5.2004, 16:29 |
| functionario honorifico, почему бы не зарегистрироваться ? ;) |
| Автор: brick-rs 21.5.2004, 03:23 |
| Вроде бы получилось, но вот еще не совсем, с кнопки минимизации все Ок, а если нажимаешь на панели задач на программу, чтоб она свернулась, то она не сворачивается, я так предполагаю это что другое событие? как сие отловить и все таки "загнать" прогу в трей? |
| Автор: functionario honorifico 21.5.2004, 16:48 |
| Воспользуйся Application.OnMinimize (в этом случае сообщение WM_SYSCOMMAND направляется не форме, а непосредственно Application. Естественно, что в обработчик сообщения формы оно не попадает) |
| Автор: SkilFul 22.5.2004, 19:13 | ||||||||||||
Вот текст, который я использовал, устранив ошибки ...
В место где пишут процедуры
Добавляем в protected (после обычных процедур)
Перехват сообщений о свертывании
Процедура работы со значками
Действия при нажатии на значок в трее
Всё отлично работает (Отредактированный ответ Song) После введения этого текста при свертывании программа будет сворачиваться в ТРеЙ. |
| Автор: x77 22.5.2004, 19:28 |
| 1. " Вот текст, который я использовал, устранив ошибки ..." 2. "(Отредактированный ответ Song)" ты за Song'ом "устранял ошибки" ? да ты крут, брат. хрен с ней, с репутацией, но мне дико любопытно, что именно ты устранил из корявок бедолаги Song'а? |
| Автор: Pathfider 17.7.2004, 17:34 |
| SkilFul С этим кодом действительно все классно работает! Правда пришлось его малясь подправить для своего случая. Спасибо! |
| Автор: sergejzr 25.9.2004, 00:15 | ||||||
что значит тут i1 ? А, разобрался, Это TImage. А вот этот save?
Всё, спасиб разобрался значит добавлю: i1 это TImage с иконкой в трее. Там формат должен быть *.ico иначе не идёт Необходимо добавить pop up menu "PopupMenu5" в вашу форму.
Вроде теперь должно работать |
| Автор: The MASTER 28.9.2004, 19:17 |
| Слушай легче короче скачать хороший Набор компонентов CHPACK если бы у меня был бы сайт я бы тебе ссылочку на скачку дал бы а так поищи на Яndex там так и пиши Пакет компонентов CHPACK и там и в трей сворачивать и у панелий появились события OnMouseOver и т.д... CHPACK For DELPHI Рекомендованно THE MASTER'ом! |
| Автор: Medved 29.9.2004, 00:04 |
| Специально для The MASTER: http://russian.joelonsoftware.com/Articles/LeakyAbstractions.html |
| Автор: The MASTER 30.9.2004, 06:29 |
| Что это Pegas? |
| Автор: brick-rs 30.9.2004, 06:38 |
| The MASTER как что, прикольная тема, ты статьи читал? почитай для тебя будет полезно, именно это Pegas и имел ввиду. Pegas-у спасибо за ссылку, много полезного подчеркнул, во многих статьях. |