Autor Beitrag
Malik
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: Di 20.04.04 12:51 
hallo,

weiss jemand, wie man eine trayicon einer anderen anwendung (zur laufzeit) ändern oder verstecken kann.

danke im voraus.


mfg malik
BungeeBug
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 901



BeitragVerfasst: Di 20.04.04 13:34 
Hi,

evl. liest du mal das Tutorial www.delphi-forum.de/viewtopic.php?t=8294 und guchst ob dir das weiter hilft. Andernfalls müsstest du uns sagen was du genau vor hast. Das Icon ändern, eine Funktion ändern die das Icon ausführt oder einfach nur das Icon verstecken.

Alles in allem muss das über eine Message an das Programm passiern, was dein Hauptproblem werden dürfte, da du nicht weißt welche Message das Programm benutzt.
Malik Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: Di 20.04.04 14:56 
hi!

danke erstmal für deine schnelle antwort. das tutorial kenne ich schon.

ich möchte einfach die trayicons von ein paar proggies, die im hintergrund laufen verstecken.
wie ich die fenster-handles auslese, habe ich auch schon herausgefunden, aber die uIDs ?!? es gibt doch bestimmt auch eine möglichkeit an diese uIDs zu kommen, oder ???

ich habe es einfach mal mit einer for-schleife von 0 bis xxx versucht und es hat funktioniert:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
procedure TForm1.Button2Click(Sender: TObject);
var NotifyIcon: TNotifyIconData;
    x: Integer;
begin
 for x := 0 to 2000 do
  with NotifyIcon do
  begin
    cbSize := SizeOf( TNotifyIconData);
    Wnd := PrInfo[ ListBox1.ItemIndex].Handle;
    uID := x;
    if Shell_NotifyIcon (NIM_DELETE, @NotifyIcon) then
        Edit1.Text := 'uID: ' + IntToStr(uID);
  end;
end;


bei zonealarm war die uID beispielsweise 155 ...

es gibt doch aber bestimmt auch eine elegantere variante, oder?

vielen dank im voraus.


mfg

malik

Moderiert von user profile iconPeter Lustig (17:19, 20.04.2004): Code- durch Delphi-Tags ersetzt
Motzi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2931

XP Prof, Vista Business
D6, D2k5-D2k7 je Prof
BeitragVerfasst: Di 20.04.04 19:18 
Es gibt leider keine dokumentierten Möglichkeiten an die TrayIcons zu kommen... hier muss man sich auf native APIs stützen.. im Internet findet man ein paar Sourcen dazu, aber eigentlich nur welche in C.. kannst ja dein Glück mal bei Google versuchen...

_________________
gringo pussy cats - eef i see you i will pull your tail out by eets roots!
Malik Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: Mi 21.04.04 18:42 
vielen dank für eure infos.

habe leider auch nicht viel herausbekommen. werde aber jetzt wahrscheinlich mit ein paar alternativen funktionen von madshi arbeiten. hab ich auch schon getestet - funzen.


mfg

malik