![]() |
Application.Minimize in der Taskleiste abfangen ?
Hi,
kann man alles, was man bei Application.Minimize (eine Prozedur) ausführt auch ausführen, wenn der Benutzer das Programm via Taskleistenklick minimiert ? Form.OnHide verursacht mir irgenwie den Fehler, dass das TNA/Tray-Icon auch bei Taskleistenminimierung sichtbar ist (unerwünscht) :gruebel: Wenn man allerdings auf den Minimierbutton (TButton) klickt, funktioniert alles korrekt und Form.Hide ist auf den Button zugewiesen (über Obejectsinsepctor). |
Re: Application.Minimize in der Taskleiste abfangen ?
Fang doch die Message von Windows ab und reagiere drauf.
|
Re: Application.Minimize in der Taskleiste abfangen ?
Wie heißt die ? WM_SIZE kennt Delphi nicht und SC_MINIMIZE ist ausschließlich der Button am Fensterrand.
|
Re: Application.Minimize in der Taskleiste abfangen ?
Warum nutzt du nicht einfach Application.OnMinimize?
|
Re: Application.Minimize in der Taskleiste abfangen ?
Was dieser Post hier zu suchen hat weiß ich nicht, da ich es offensichtlich benutze. Da du wahrscheinlich etwas falsch verstanden hast:
Delphi-Quellcode:
Wie am Code zu sehen ist, wird der Code nur bei einem Klick auf einen Button ausgeführt. Das Problem ist, dass es auch bei Taskleistenklicks passieren soll. Ich habe im OI einfach OnHide=xiMinimizeClick, aber da verhält sich die Anwendung sehr komisch. Falls es nicht anders geht, werde ich entweder ein kleines Beispiel schreiben oder gleich die RC6 des Players hochladen.
// Buttonclick
// CTI = CoolTrayIcon procedure TfrmMain.xiMinimizeClick(Sender: TObject); begin if frmSetting.mtt then begin CTI.MinimizeToTray := True; FillPlayItems; CTI.IconVisible := True; CTI.HideMainForm; Application.Minimize; end else begin CTI.MinimizeToTray := False; Application.Minimize; end; end; procedure TfrmMain.CTIMinimizeToTray(Sender: TObject); begin CTI.MinimizeToTray := True; FillPlayItems; CTI.IconVisible := True; CTI.HideMainForm; end; |
Re: Application.Minimize in der Taskleiste abfangen ?
deshalb nochmal die Frage. Warum verwendest du nicht Application.OnMinimize sondern TYourFormClass.OnHide? Bei Application.OnMinimize bekommst du jegliches Minimieren mit, egal ob dies per Button, Message oder Taskleisteneintrag ausgeführt wird.
|
Re: Application.Minimize in der Taskleiste abfangen ?
:oops: Jetzt habe ich endlich verstanden, was du meinst. Danke!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz