PDA

Просмотр полной версии : Работа с треем


criz
03.12.2008, 18:08
Сорри за настойчивость, писал о проблеме в другом разделе...ответа не дождался, видимо не заметили мой вопрос :(
Вобщем, мне нужно засунуть иконку в трей и в дальнейшем с ней работать. Засунуть в трей я смог. Но вот работать с ней не получается =(

#define WM_ShellNote (WM_APP+100)
#define IDC_MYICON 1006

void __fastcall TForm1::Button1Click(TObject *Sender)
{
memset(&iconData, 0, sizeof(iconData));
iconData.cbSize = sizeof(NOTIFYICONDATA);
iconData.hWnd = Form1->Handle;
iconData.hIcon = LoadIcon(NULL, MAKEINTRESOURCE(32516));
iconData.uCallbackMessage = WM_ShellNote;
iconData.uID = IDC_MYICON;
iconData.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;

lstrcpyn(iconData.szTip, "Hint", sizeof(iconData.szTip)/sizeof(iconData.szTip[0]));

Shell_NotifyIconA(NIM_ADD, &iconData);

}

LRESULT CALLBACK TForm1::MyNotify(TMessage &Msg)
{
switch(Msg.LParam)
{
case WM_RBUTTONUP:
Form1->Caption="WM_RBUTTONUP";
break;
case WM_LBUTTONUP:
Form1->Caption="WM_LBUTTONUP";
break;
default:
break;
}
}

Никак не пойму почему нет реакции на мышь.
Спасайте! :confused:

sn0w
03.12.2008, 19:01
в билдере есть папка с примерами где какраз лежит то что нужно =)

criz
03.12.2008, 19:27
Все, разобрался. Вроде работает :)
Тему прошу не закрывать, ибо вопросы еще будут =)
jes: okэ

th13fnano
08.12.2008, 20:07
А компоненты не хочеш юзать?

criz
08.12.2008, 20:44
А компоненты не хочеш юзать?
"Я его слепила из того, что было" (c) :)
Кстати, у нод32 красивое окошко над треем выскакивает, как такого(подобного) добиться?

vikseriq
08.12.2008, 22:29
форму свою рисуй, определяй координаты и отображай с полупрозрачностью.

criz
22.12.2008, 20:46
форму свою рисуй, определяй координаты и отображай с полупрозрачностью.
Сделано :)
тему можно закрывать