![]() |
Taskbareintrag
Hi @all!
Ich habe ein kleines Problem. Ersteinmal was ich vorhabe: ============== Ich versuche ein Programm zuschreiben, dass beim minimieren des Form1 zur Traybar verschoben wird. Nun soll aber der Eintrag in der Taskbar verschwinden. Wenn nun auf das Trayicon doppelt geklickt wird, soll das Form wiederhergestellt werden und der Eintrag in der Taskbar neu erstellt werden. ============== So, die Komponente für das Trayicon habe ich (auch weiß ich, wie ich das Form neu erstelle etc.). Die Frage ist halt: wie lasse ich den Eintrag beim minimieren verschwinden? Mein Code-Ansatz:
Code:
So, ich hoffe ihr habt verstanden, was ich vorhabe und könnt mir helfen!
procedure toTray;
begin SxTrayIcon1.Active := true; // Shell+ Komponente zum verschwinden in der Traybar // ab hier: keine Ahnung! HILFE end; procedure fromTray; begin SxTrayIcon1.Active := false; // Zurück in die Taskbar! end; procedure TForm1.FormCreate(Sender: TObject); begin Application.OnMinimize := toTray; Application.OnRestore := fromTray; end; Chris1308 |
So, Problem gelöst...
Für die, die es interessiert der Source:
Code:
Ihr braucht aber die Shell+ - Komponenten!
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, SxTrayIcon; type TForm1 = class(TForm) SxTrayIcon1: TSxTrayIcon; procedure FormCreate(Sender: TObject); procedure toTray(Sender: TObject); procedure fromTray(Sender: TObject); procedure SxTrayIcon1DblClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.toTray(Sender: TObject); var Owner: HWND; begin Owner:=GetWindow(Handle,GW_OWNER); ShowWindow(Owner,SW_HIDE); end; procedure TForm1.fromTray(Sender: TObject); var Owner: HWND; begin Owner:=GetWindow(Handle,GW_OWNER); ShowWindow(Owner,SW_SHOW); end; procedure TForm1.FormCreate(Sender: TObject); begin SxTrayIcon1.Active := true; Application.OnMinimize := toTray; end; procedure TForm1.SxTrayIcon1DblClick(Sender: TObject); begin fromTray(self); Application.Restore; end; end. Chris1308 |
Moin Chris,
und was sind die Shell+ Komponenten? |
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:49 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