Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
 Аватар для Famous_47
1 / 1 / 1
Регистрация: 13.11.2015
Сообщений: 59

Вывод сообщения из приложения в трее

22.10.2016, 18:17. Показов 1613. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер, решил для себя написать эдакий Power Manager, заодно попрактиковаться в программировании, новые штуки попробовать. Всё вроде бы сделал, но уже голова не варит, не могу придумать как отобразить сообщение типа MessageDlg (когда до выключения ПК по таймеру остается 5 минут). Всё бы ничего, но программу спрятал в трей вот таким способом:
C++
1
2
3
4
5
6
7
8
9
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
   if (CheckBox3->Checked==true)
   {
   Action=caNone;
   ShowWindow(Application->Handle,SW_HIDE);
   TrayIcon1->Minimize();
   }
}
А сообщение вывожу вот так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void __fastcall TForm1::Timer2Timer(TObject *Sender)
{
if (FloatToStr(MinutesBetween(ff, ss)+1)==5)
{
                 ShowWindow(Application->Handle,SW_RESTORE);
if (MessageDlg("Осталось 5 минут до выключения", mtCustom, TMsgDlgButtons() << mbOK,0) == mrOk)
            {
                     //   ShowMessage("Нажал на Ок");
            }
 
 
Timer2->Enabled=false;
}
}
Вследствие чего сообщение то отображается, но увидеть его можно только когда разверну программу. В дальнейшем конечно буду использовать MessageBox вместо MessageDlg (он еще звук выдает), но проблема всё та же, как же его вывести на экран...

Прикрепляю сам проект (прошу прощения за сплошной код, не думал что столько много выйдет и пошел писать всё подряд (дальше буду учиться разбрасывать всё по классам). Таймеры на данный момент настроены неверно (чтобы срабатывали быстро и для тестов не приходилось долго ждать), если кому интересно потом выложу готовую программу.
Миниатюры
Вывод сообщения из приложения в трее  
Вложения
Тип файла: rar PMbF.rar (838.8 Кб, 7 просмотров)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.10.2016, 18:17
Ответы с готовыми решениями:

Обращение к другому приложения, "висящему" в трее
Здравствуйте, уважаемые форумчане! Хотел бы задать такой вопрос: а как можно реализовать обращение к какой-либо функции приложения,...

Вывод сообщения на экран при запуске оконного приложения
Необходимо сделать через хуки. Пыталась сделать с SetWindowsHookEx. Толка 0. Помоги пожалуйста. Желательно кодом)

На фоне Firefox мигают сообщения в трее
При запущенном браузере Mozilla Firefox, если в районе системного трея есть какие-то сообщения, то они мерцают, временно исчезают на доли...

1
place status here
 Аватар для gunslinger
3190 / 2227 / 640
Регистрация: 20.07.2013
Сообщений: 6,022
23.10.2016, 12:33
Можно выводить сообщение в окне отдельной (дополнительной) формы.
Либо добавить иконку в трей (TrayIcon или, если есть, CTrayIcon) и там выводить всплывающее сообщение (для TrayIcon: текст BalloonHint, заголовок BalloonTitle).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.10.2016, 12:33
Помогаю со студенческими работами здесь

Не получается обработать сообщения от иконки в трее
вот код ... Const WM_TRAYICON = WM_USER+1; ... private procedure TrayIconClick(var Message:TMessage); message...

Как сделать чтобы над иконкой в трее выводилось окно сообщения
Как сделать что бы над иконкой в трее выводилось окно сообщения? Или маленькое окошко с некоторой информацией над треем?

Значок приложения в трее
Добрый день. Подскажите, пожалуйста, можно ли настроить для приложения значок, отображаемый в панели задач. Вместо стандартного...

Создание кнопок для приложения в трее
Как создать вот такие кнопки для своего приложения?

Не выключается Windows XP при работе приложения в трее
Создал приложение которое напоминает приближение сроков исполнения. Программа работает в трее. В 9 и 11 часов утра приложение...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru