Autor Beitrag
Guenni_d
Hält's aus hier
Beiträge: 8


D6 Pers
BeitragVerfasst: Do 01.01.04 20:19 
Hallo zusammen,

ja ich weiss bezüglich Systray gibts einiges zu lesen hier..aber mein Problem ist ein wenig anders gelagert:

Ich möchte ein fremdes Programm verstekcen, wenn es minimiert wird (oder auf Knopfdruck). Und natürlich auch hin und wieder per Knopfdruck öffnen.

Verstecken hab ich mit folgendem Code probiert:

ausblenden Delphi-Quelltext
1:
2:
whand:=findwindow(NIL,'Fremdes programm');
if whand <>0 then  ShowWindow(reporter, SW_HIDE) ;


Ergebnis: Das Programm verschwindet, aber nicht der Eintrag in der Taskbar. Der bleibt weiterhin zu sehen. Wie bekomm ich den weg?

Achja: noch ne Frage: wie bekomm ich raus, wie der Status eines Programmes ist ? also zum beispiel minimized usw...

Günter

Moderiert von user profile iconPeter Lustig: Delphi-Tags hinzugefügt
Pascal
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 155

Win 98, Win XP
Delphi 2005, Delphi 5
BeitragVerfasst: Do 01.01.04 21:40 
Dein Code funktioniert bei 1-Fenster anwendungen(z.B. IE, Ordnern,...) aber z.B. bei Delphi bleibt eben der Taskbareintrag da.
Um den zu entfernen musst du das 'Programm' minimieren.
bei Delphi hat das 'Programm' den Classname 'TApplication', wie aber auch einige andere(z.B. meistens das Eigene). Also muss man das 'Programm' genauer definieren, z.B. mit einem Child-Window:

ausblenden Delphi-Quelltext
1:
showwindow(findwindowex(0,findwindow(  'TAppbuilder'  ,nil),  'TApplication'  ,nil),sw_hide);