Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.09.2007, 21:51   #1
Romanus
Кодер
Форумчанин
 
Регистрация: 27.01.2007
Сообщений: 271
По умолчанию Обновить значки в трее

Ситуация такая: например мы запускаем программу которая оставляет значок в трее если эту программу убить то значок останется в трее пока мы не проведем мышкой по нему. Возможно ли программно убрать не используемые значки из треи?
Romanus вне форума Ответить с цитированием
Старый 17.09.2007, 22:19   #2
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Цитата:
Сообщение от Romanus Посмотреть сообщение
Ситуация такая: например мы запускаем программу которая оставляет значок в трее если эту программу убить то значок останется в трее пока мы не проведем мышкой по нему. Возможно ли программно убрать не используемые значки из треи?
Возможно из той программы, где их создавали.
SkyM@n вне форума Ответить с цитированием
Старый 18.09.2007, 11:01   #3
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Много раз обсуждалось

Код:
Procedure TForm1.Ic(n:Integer;Icon:TIcon);
Var Nim:TNotifyIconData;
begin
 With Nim do
  Begin
   cbSize:=SizeOf(Nim);
   Wnd:=Form1.Handle;
   uID:=1;
   uFlags:=NIF_ICON or NIF_MESSAGE or NIF_TIP;
   hicon:=Icon.Handle;
   uCallbackMessage:=wm_user+1;
   szTip:='Хинт, который будет появляться у значка';
  End;
 Case n OF
  1: Shell_NotifyIcon(Nim_Add,@Nim);
  2: Shell_NotifyIcon(Nim_Delete,@Nim);
  3: Shell_NotifyIcon(Nim_Modify,@Nim);
 End;
end;
//исходники.ру
пыщь

Последний раз редактировалось rpy3uH; 27.03.2009 в 20:11.
JTG вне форума Ответить с цитированием
Старый 18.09.2007, 22:09   #4
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

ммм.. если я не ошибаюсь этот код отрегулирует значек для себя а не для другого приложения т.к. Wnd:=Form1.Handle; по моему мнению требуеться прогнать все окна через подобную операцию и отсылать Shell_NotifyIcon(Nim_Modify,@Nim);. но если окно уже было удалено, а значек все еще есть попробывать (кажется ShellTray_Wnd что такое - название трея - тобиш окна) такому окну послать апдейт... может прокатит ) или отослать типа там мышка ходит ) попробуйте, сам с такой проблемой не встричался но может пройдет
BOBAH13 вне форума Ответить с цитированием
Старый 19.09.2007, 10:31   #5
Romanus
Кодер
Форумчанин
 
Регистрация: 27.01.2007
Сообщений: 271
По умолчанию

2ВОВАН13 Проблема в том что мессаги действуют на весь трей а не на конкретные значки.
Romanus вне форума Ответить с цитированием
Старый 19.09.2007, 11:38   #6
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

А зачем собственно заниматся уборкой за чужими программами?
пыщь
JTG вне форума Ответить с цитированием
Старый 19.09.2007, 21:37   #7
Romanus
Кодер
Форумчанин
 
Регистрация: 27.01.2007
Сообщений: 271
По умолчанию

Цитата:
А зачем собственно заниматся уборкой за чужими программами?
Вопросы здесь задаю я Ты лучше решение предложи а не вопросы задавай.
Romanus вне форума Ответить с цитированием
Старый 20.09.2007, 20:19   #8
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

самый тупой метод это попробовать программно переметить мышь на этот значок
rpy3uH вне форума Ответить с цитированием
Старый 22.09.2007, 15:47   #9
Romanus
Кодер
Форумчанин
 
Регистрация: 27.01.2007
Сообщений: 271
По умолчанию

Цитата:
самый тупой метод это попробовать программно переметить мышь на этот значок
Это работает в случае если заранее знать значок какой программы нужно скрыть.
Romanus вне форума Ответить с цитированием
Старый 23.09.2007, 17:12   #10
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

а если протащить курсор по всему низу экрана начиная с середины
rpy3uH вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Значки на рабочем столе Xardas Свободное общение 4 01.03.2008 20:21
Убрать значки masterprog Помощь студентам 2 28.12.2007 19:47
Помогите - Значки в Windows Vista Алексей_C Общие вопросы Delphi 5 19.11.2007 01:27
Значки в ListView Македонский Общие вопросы Delphi 10 12.09.2007 20:10
значки в трее oLMeR Общие вопросы Delphi 3 11.11.2006 18:39