Tray

0

Witam,
chcialbym zrobic cos w stylu podajnika systemowego, aby na mojej formie pojawialy sie wsystkie ikonki z traya. Nie chce tego robic w sposob hardcore'owy, czyli wyciagac ich uchwyty z explorera, zalezy mi na osobnym programi. moze mi ktos pomoc??

0

Może coś z Windows.SetParent() ?

P.S. Mój kask on ma trzy rogi.... [browar]

0

Karolu - to daj mi do nich uchwyt, to raz, a dwa wolalbym bez odpalanie explorera.

0

One raczej uchwytu nie maja, pewnie przy ustawianiu ikony wysylany jest jakis komunikat z adresem ikony, handlem aplikacji itp.

0

wiem ze nie maja uchwytu, co mnie boli - to byla ironia z tym uchwytem. Przecie jak sie ustawia ikonke w tray to sie komunikat wlasnie wysyla

0

Wiec wystarczy zlukac jaki to komunikat i go zhookowac. Kiedys w delpgi/bin widzialem programik do sledzenia komunikatow ale teraz za cholere nie moge go <ort>znaleŹĆ</ort>.

0

winsight sie nazywa z tegoco pamietam. mozesz mi powiedziec jak sie hookuje komunikaty?? nie bawilem sie tym.

0

Troche zabawy z dllkami, byl na 4p bardzo fajny przyklad. BTW, jak nie masz nic przeciwko to jak uda ci sie z tym poradzic to podeslij mi rozwiazanie.

[dop]
http://4programmers.net/file.php?id=1393

0

hehe, jak sobie z tym poradze to chyba kazdy bedzie chcial tego zaznac :)

dobra, ale tobie dam jako ze mi pomogles, a inni beda musieli poczekac, az ktos uczynny sie tu pojawi:)

nie no zartuje sobie, ale pewno jak dam rade to komponent zrobie.

0

U mnie działa:
Jeżeli chodzi o uchwyt(y) to:

ClassName: Shell_TrayWnd:
ClassName: TrayNotifyWnd:
ClassName: SysPager :
ChildWindow: Obszar powiadomień
ClassName: ToolbarWindow32

To "wwali" ci wszystkie trayowe ikonki prosto na formę:

var H:Integer;
begin
H:=FindWindow('Shell_TrayWnd',nil);
H:=FindWindowEx(H,0, 'TrayNotifyWnd', nil);
H:=FindWindowEx(H,0, 'SysPager', nil);
H:=FindWindowEx(H,0, 'ToolbarWindow32', nil);

Windows.SetParent(H, Form1.Handle);

Ma tylko jedną -malutką- wadę:
Kolor do okoła ikonek traya jest czarny :-/
Nie wiem, bo nie próbowałem ale może można go zmienić przez wysyłanie komunikatów albo inne cudo...?

Cimak.

0

Jest jeszcze jedna wada, przypuszczam, ze jak ktos potrzebuje czegos takiego to znaczy, ze pisze cos w stylu wlasnego shella - czyli wyciaganie czegokolwiek z explorera odpada.

1 użytkowników online, w tym zalogowanych: 0, gości: 1