AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Application anwählbar minimiert startbar machen

Application anwählbar minimiert startbar machen

Ein Thema von Helmi · begonnen am 24. Apr 2005 · letzter Beitrag vom 24. Apr 2005
Antwort Antwort
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#1

Application anwählbar minimiert startbar machen

  Alt 24. Apr 2005, 09:36
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".
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Application anwählbar minimiert startbar machen

  Alt 24. Apr 2005, 10:19
in deinem Iniauslesen könntest du als Defaultwert den der Checkbox nehmen
StartMinimized := Ini.ReadBool('YourSection', 'StartMinimized', CheckBox1.Checked);
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#3

Re: Application anwählbar minimiert startbar machen

  Alt 24. Apr 2005, 17:32
Hallo,

Zitat von SirThornberry:
in deinem Iniauslesen könntest du als Defaultwert den der Checkbox nehmen
StartMinimized := Ini.ReadBool('YourSection', 'StartMinimized', CheckBox1.Checked);
aber das ist das was ich 1. nicht brauche und was 2. auch nicht funktioniert.
ich möchte das ja in der Komponente haben
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Application anwählbar minimiert startbar machen

  Alt 24. Apr 2005, 18:49
Moin Helmi,

wenn Du mit minimiert starten meinst, dass die Anwendung zuerst nur im Tray erscheinen soll, dann könntest Du es z.B. dadurch erreichen, dass Du in der Projektdatei ApplicationShowMainForm auf false setzt, in Abhängigkeit der Einstellung.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#5

Re: Application anwählbar minimiert startbar machen

  Alt 24. Apr 2005, 18:56
Zitat von Christian Seehase:
Moin Helmi,

wenn Du mit minimiert starten meinst, dass die Anwendung zuerst nur im Tray erscheinen soll, dann könntest Du es z.B. dadurch erreichen, dass Du in der Projektdatei ApplicationShowMainForm auf false setzt, in Abhängigkeit der Einstellung.
Ja - das wär das Einfachste.

Ich würds halt gerne in die TrayIcon-Komponente packen.
Es ist ja eigentlich schon drin (siehe oben), nur kann man dort das nicht einstellbar machen, sondern es funktioniert nur aus dem OJ raus. (bzw. wenn schon die Variable beim laden der komponente true ist)
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Application anwählbar minimiert startbar machen

  Alt 24. Apr 2005, 19:27
Moin Helmi,

das kannst Du jetzt drehen und wenden wie Du willst, aber irgendwo musst Du den Wert speichern, wenn er sich verändert hat, zumindest beim Programmende.
Ob die jeweilige Programmdatei dafür der geeignete Ort ist wage ich aber mal zu bezweifeln.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz