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

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

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.12.2010, 13:42   #1
Pasha_Sh
Форумчанин
 
Аватар для Pasha_Sh
 
Регистрация: 16.05.2010
Сообщений: 137
По умолчанию Всплывающее сообщение в трее

Нужен компонент, при помощи которого я смогу выводить сообщения в трей.
osu
Pasha_Sh вне форума Ответить с цитированием
Старый 06.12.2010, 13:51   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

М.м.м Кажись BaloonToolTip называется. Помоему в LMD есть такой
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 06.12.2010, 14:09   #3
Pasha_Sh
Форумчанин
 
Аватар для Pasha_Sh
 
Регистрация: 16.05.2010
Сообщений: 137
По умолчанию

Нашел что-то

Но это не то....
osu
Pasha_Sh вне форума Ответить с цитированием
Старый 06.12.2010, 15:18   #4
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

CoolTrayIcon может такое
SERG1980 вне форума Ответить с цитированием
Старый 06.12.2010, 16:04   #5
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

В смысле, чтобы сообщение всплывало из трея?
В TMS есть AdvAlertWindow
В JEDI - JvDesktopAlert
В Berg Next - не помню как называется, но компонент крутой.
Одиночный компонент KMAlert (я использую именно его, т.к. он позволяет вид редактировать в дизайне). В общем, копай по слову Alert...
_SERGEYX_ вне форума Ответить с цитированием
Старый 06.12.2010, 17:12   #6
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...а зачем компонент ...всегда использую такую конструкцию, делаете модулем:
Код:
 procedure delicon(ch:thandle); // удалить иконку
 procedure set_tn(ti,r: smallint; hint:shortstring); // установить иконку в трей
 procedure show_tn(mode: smallint; info,title: string); // вывести сообщение над иконкой в трее

//
const
 NIF_INFO = $10;
 NIF_MESSAGE = 1;
 NIF_ICON = 2;
 NOTIFYICON_VERSION = 3;
 NIF_TIP = 4;
 NIM_SETVERSION = $00000004;
 NIM_SETFOCUS = $00000003;
 NIIF_NONE = $00000000;
 NIIF_INFO = $00000001;
 NIIF_WARNING = $00000002;
 NIIF_ERROR = $00000003;

 WM_USER = $0400;
 NIN_BALLOONCLOSE = WM_USER + 1;
 NIN_BALLOONSHOW = WM_USER + 2;
 NIN_BALLOONHIDE = WM_USER + 3;
 NIN_BALLOONTIMEOUT = WM_USER + 4;
 NIN_BALLOONUSERCLICK = WM_USER + 5;
 NIN_SELECT = WM_USER + 0;
 NINF_KEY = $1;
 NIN_KEYSELECT = NIN_SELECT or NINF_KEY;

 TRAY_CALLBACK = WM_USER + 222;

var IconData: TNewNotifyIconData; 

procedure Ontmr1(uTimerID, uMessage: uint;dwUser, dw1, dw2: dword) stdcall; // обеспечиваем смену иконок
begin
 inc(itn); if itn>1 then itn:= 0;
 if atn then set_tn(itn,1,'')
end;

procedure set_tn(ti,r: smallint; hint:shortstring);
begin
 IconData.cbSize:= SizeOf(IconData);
 IconData.Wnd   := vid.Handle; //AllocateHWnd(vid.iconmsg);
 //
 IconData.uID   := 1;
 IconData.uFlags:= NIF_ICON or NIF_MESSAGE or NIF_TIP;
 IconData.uCallbackMessage:= TRAY_CALLBACK;

 case ti of
  0: IconData.hIcon:= loadicon(HInstance,'pn');
  1: IconData.hIcon:= loadicon(HInstance,'pw');
  2: IconData.hIcon:= loadIcon(0,MakeIntResource(32513+0));
  3: IconData.hIcon:= loadIcon(0,MakeIntResource(32513+1));
  4: IconData.hIcon:= loadIcon(0,MakeIntResource(32513+2));
  5: IconData.hIcon:= loadIcon(0,MakeIntResource(32513+3));

  6: IconData.hIcon:= loadicon(HInstance,'pp');
  7: IconData.hIcon:= loadicon(HInstance,'wp');
 end;

 StrPLCopy(IconData.szTip,hint,SizeOf(IconData.szTip)-1);
 if r=0 then begin                                   //-add
  Shell_NotifyIcon(NIM_ADD, @IconData);
  tmr1:= timesetevent(250,0,@Ontmr1,0,TIME_PERIODIC)
 end;
 if r=1 then Shell_NotifyIcon(NIM_MODIFY, @IconData);//-mod
 if r=2 then begin                                   //-del
  timeKillEvent(tmr1);
  Shell_NotifyIcon(NIM_DELETE, @IconData)
 end
end;

procedure show_tn(mode: smallint; info,title: string);
begin
 IconData.cbSize:= SizeOf(IconData);
 IconData.uFlags:= NIF_INFO;
 strPLCopy(IconData.szInfo, Info, SizeOf(IconData.szInfo) - 1);
 IconData.DUMMYUNIONNAME.uTimeout := 5000;
 strPLCopy(IconData.szInfoTitle, Title, SizeOf(IconData.szInfoTitle) - 1);
 case mode of
  0: IconData.dwInfoFlags:= NIIF_NONE;
  1: IconData.dwInfoFlags:= NIIF_INFO;
  2: IconData.dwInfoFlags:= NIIF_ERROR;
  3: IconData.dwInfoFlags:= NIIF_WARNING
 end;
 Shell_NotifyIcon(NIM_MODIFY, @IconData);
end;
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 09.12.2010, 00:45   #7
temchik2004
 
Регистрация: 28.11.2010
Сообщений: 8
По умолчанию

KMalert
пытаюсь запустить исходник оно мне выдает ошибку будто плагин не установлен!
Пожалуйста помогите с его установкой!
temchik2004 вне форума Ответить с цитированием
Старый 13.09.2013, 13:16   #8
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

А как сделать, чтобы при нажатии на всплывающее сообщение происходило какое-нибудь событие (например, открыть окно программы)?
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Старый 13.09.2013, 13:43   #9
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

newerow1989, OnBalloonClick?
ZuBy вне форума Ответить с цитированием
Старый 13.09.2013, 13:57   #10
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Каким образом вызвать эту процедуру? В IconData нет такого события
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
всплывающее окно beygul Помощь студентам 4 28.08.2010 01:43
Всплывающее окно rado Работа с сетью в Delphi 0 20.04.2010 18:23
всплывающее окно niziriska Общие вопросы Delphi 5 08.07.2009 13:27
Всплывающее окно EdNovice Общие вопросы Delphi 2 09.07.2008 18:04
Как сделать всплывающее сообщение от программы на экране Dissonance Помощь студентам 8 20.05.2008 08:17