|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
26.07.2011, 15:36 | #1 |
Пользователь
Регистрация: 10.03.2008
Сообщений: 68
|
Проблемы со сворчиванием в Tray
Собственно, как сверачивать/разворачивать программу из трея я умею. Но работает это только в том случае, если у приложения одна форма. А если приложение имеет форму и какое-нибудь окно ShowMessage, то при сворачивании приложения ShowMessage остается видимым. Собственно, с этим и проблемы. Идея такая, что надо как-то получить все дочерние формы главной формы и их тоже сделать невидимыми. Но, собственно, как отловить это окошко ShowMessage или какой-либо другой диалог - я не знаю. Подскажите, как это сделать или предложите другой вариант свернуть приложение красиво со всеми открытыи в нём окнами.
Вот код, который есть: Код:
|
26.07.2011, 16:17 | #2 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
ну да. а что в этом такого?
Форма никуда не исчезает. Она просто скрывается с экрана. Но она там. |
26.07.2011, 16:38 | #3 |
Пользователь
Регистрация: 10.03.2008
Сообщений: 68
|
Ну так надо чтобы вместе с ней ShowMessage тоже скрылся
|
26.07.2011, 16:55 | #4 |
Форумчанин
Регистрация: 18.12.2008
Сообщений: 266
|
Так сделайте невидимым свой ShowMessage по событию сворачивания в трей
Мало открыть человеку глаза, большинство еще просит указать дорогу и ждет волшебного пенделя. |
26.07.2011, 17:07 | #5 | |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
Цитата:
Ну, это вполне возможно. Если он напишет свой ShowMessage. ShowMessage это просто форма с label и caption больше ничего. Либо пиши свой вариант. Либо изучайт е откуда у ShowMessage ноги растут в модуле dialogs. |
|
26.07.2011, 17:12 | #6 |
Участник клуба
Регистрация: 29.09.2008
Сообщений: 1,234
|
вот мой вариант ShowMessage
он должен решить вашу проблему |
26.07.2011, 17:29 | #7 |
Просто хороший
Форумчанин
Регистрация: 26.03.2010
Сообщений: 562
|
... удалено
Помог, нажми весы слева
|
27.07.2011, 00:42 | #8 |
Пользователь
Регистрация: 10.03.2008
Сообщений: 68
|
|
27.07.2011, 09:31 | #9 |
Форумчанин
Регистрация: 08.09.2010
Сообщений: 880
|
По логике микрософта диалоговое окно (а ShowMessage именно такое) запрещают активизировать другие окна приложения пока не будет закрыто.
Попробуйте ка мнимизировать или закрыть окно приложения если активным является ShowMessage. Отсюда вариант решения: не стоит прятать приложение в трей, если есть активное в этот момент диалоговое окно. А чтобы нельзя было вызвать меню из иконки в трее нужно обойти этот момент с помощью FindWindowEx: Код:
|
27.07.2011, 22:08 | #10 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
А вы вообще знаете что ShowMessage это тоже TForm? При том дельфийский...
Реализуй свой ShowMessage ... и ам принмай сообщение от трея ну WM_TRAY свой |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
System Tray | xRamzeSx | Общие вопросы Delphi | 9 | 19.09.2010 14:47 |
Настраиваемый Tray hint | Johnson | Общие вопросы Delphi | 2 | 13.11.2009 16:00 |
Tray | Shouldercannon | Общие вопросы Delphi | 4 | 16.07.2008 22:35 |