Hallo,
Ich hab ein TrayIcon und bei diesem TrayIcon minimiere ich im "Loaded" die MainForm der Application.
Delphi-Quellcode:
procedure TTrayIcon.Loaded;
begin
inherited Loaded; // Immer zuerst "inherited Loaded"
If FStartMinimized and not (csDesigning in ComponentState) then
begin
Application.ShowMainForm := false;
ShowWindow(Application.Handle, SW_HIDE);
end;
end;
Die Variable "FStartMinimized" kommt aus einer Property.
Delphi-Quellcode:
property StartMinimized: Boolean read FStartMinimized write SetStartMinimized
default False;
Wenn ich jetzt im
OI "StartMinimied" auf "true" setze dann funktioniert es ohne Probleme.
Nur würd ich gerne aus dem Programm raus anwählbar machen - sprich mit einer CheckBox.
Ich hab es mal versucht, dass ich es im OnCreate der Form so mache:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
Iniauslesen; //<== Hier wird eine Ini-Datei ausgelesen und der Zustand der CheckBox1 beschrieben.
with TrayIcon do
begin
StartMinimized := CheckBox1.Checked; //zu diesem Zeitpunkt "true"
end;
Das Problem hierbei ist, dass das "Loaded" des TrayIcons schon "durchlaufen" wurde und deshalb bringt das nichts mehr.
Weiss jemand wie ich es am besten machen könnte, damit es minimiert startbar ist und trotzdem die Form nicht kurz sichtbar ist.
Ich würd das ganze gerne in der Komponente lassen - sprich über die Property "StartMinimized".