Форум программистов, компьютерный форум, киберфорум
Delphi
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 04.11.2008
Сообщений: 6

Заставить программу висеть в трее.

04.11.2008, 20:18. Показов 1629. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дело вот в чём:
нужно 1. Чтобы прога висела в трее.(сделано)
2. Чтобы её небыло на таскбаре.(сделано)
3. Главной формы небыло на экране.
4. При нажитии shift+F11 выполнялось action1 из ActionList.
Помогите плиз..
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.11.2008, 20:18
Ответы с готовыми решениями:

Как заставить не *висеть* приложение.
В приложение успользую компонент IpRasDialer (IPRO) для подключения к интернету. Когда подключение возможно,проблем нет. Но если...

Угадать программу по иконке в трее
Доброго времени суток! От пользователя получили скриншот, в трее видна иконка (прилагается). Что это за программа, может кто знает? ...

Приложение в трее и контекстное меню в трее
Хочу сделать приложение, которое сидело бы только в трее в виде иконки и по клику правой клавиши мыши выскакивало контекстное меню....

8
0 / 0 / 0
Регистрация: 28.10.2008
Сообщений: 27
06.11.2008, 12:11
Встречный вопрос. Расскажи как сделать, чтобы при нажатии на иконку в систрэе окно программы возвращалось на экран. Спасибо заранее, если найду что про ноткеу, напищу.
0
0 / 0 / 0
Регистрация: 28.10.2008
Сообщений: 27
06.11.2008, 12:20
Извини, я не заметил, что третий пункт не готов.
я сделал такперехватить момент свертывания у меня не получилось поэтому обработка нажатия на клавишу 'спрятать')

procedure tform1.HideMainForm;
begin
application.ShowMainForm := false;
showwindow(application.handle, SW_HIDE);
showwindow(application.mainform.handle, SW_HIDE);
end;

Таким образом окно должно восстановиться:
procedure tform1.restoremainform;
begin
application.ShowMainForm := true;
showwindow(application.handle, SW_restore);
showwindow(application.mainform.handle, SW_restore);

end;

Не могу при нажатии на иконку открыть popupmenu и вызвать restoremainform.
0
0 / 0 / 0
Регистрация: 04.11.2008
Сообщений: 6
06.11.2008, 19:35  [ТС]
Я сделал проще, form1.hide; )
В систрай я убираю через RxTryIcon, popup тоже от rxlibа привязано.
Просто в попапе пункт 'открыть' зделал дефолтным.
0
0 / 0 / 0
Регистрация: 04.11.2008
Сообщений: 6
07.11.2008, 20:20  [ТС]
Извини.. Чё-то я нето ляпнул, всера башка вообще не соображала..

В общем скрываю я теперь так:
В самом прожекте(не в модуле) после создания формы пишу
application.ShowMainForm := false;

А открываю фоому через
form1.show;

Вот вроде и всё
0
0 / 0 / 0
Регистрация: 28.10.2008
Сообщений: 27
11.11.2008, 19:47
Запарился все делать сам, скачал CoolTrayIcon, там есть все что мне нужно было. А вот как при неактивном окне отловить F11 могу сказать следующее. Если попытаться перехватывать все сообщения Windows и обработать только нужное, должно получиться, но, кажется, это будет большой геморрой.
0
0 / 0 / 0
Регистрация: 03.08.2008
Сообщений: 20
16.11.2008, 00:01
registerHotKey
0
0 / 0 / 0
Регистрация: 28.10.2008
Сообщений: 27
17.11.2008, 15:17
быть может, поподробнее? спасибо
0
easy
17.11.2008, 15:52
type
TForm1 = class(TForm)
...
procedure WMHotkey1(var Msg: TMessage); message WM_HOTKEY;
...

procedure TForm1.FormCreate(Sender: TObject);
begin
...
registerhotkey(form1.Handle,49151,MOD_SH IFT,VK_F11);
...

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
...
UnregisterHotKey(form1.Handle,49151);
...

//собсно сам обработчик:
procedure tform1.WMHotkey1(var Msg: TMessage);

begin

try

inherited;
if Msg.WParam = 49151 then
begin
....//код
end;

Msg.Result := 0;

except

end;

end;

..успехов...
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.11.2008, 15:52
Помогаю со студенческими работами здесь

Как заставить программу запустить другую программу
Как заставить программу запуститься в спрятанном режиме, чтобы её можно было найти только в Дистептчере задач во вкладке процессы и...

Как спрятать консольную программу в трее при запуске и открыть в определённое время ?
Есть ли такой код,который спрячет консольную программу в трее при запуске и откроет в определённое время ? Все эти действия будут...

Выполнение процедуры заставляет висеть приложение
Вызываются последовательно друг за другом 2 процедуры. Вторая процедура долго отрабатывает(обе процедуры содержат запросы к базе). Как...

Висеть в памяти, пока не закроется процесс
Есть app1.jar, который запускает app2.jar. Идея такова: при запуске app2 необходимо прятать app1, но не закрывать (оставаться в...

Как написать программу "сидящую" в трее?
Собственно сабж на С++, можно Delphi.


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru