Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Application.Minimize beim Start (https://www.delphipraxis.net/97545-application-minimize-beim-start.html)

ebber 12. Aug 2007 17:22


Application.Minimize beim Start
 
Hallo

mein Programm wird beim Start nicht angezeigt (nur ein TrayIcon). Danach braucht es ~8k Arbeitsspeicher (nach dem Taskmanager). Wenn ich nun die Form meines Programms anzeigen lasse braucht es immer noch so viel. Wenn ich dann aber Application.Minimize mache braucht es nur noch 1,5k.
Ich möchte aber dass es gleich nach dem Start nur die 1,5k verbaucht. Ich habe das Application.Minimize schon so ziemlich überall eingebaut, aber sobald die Form beim Start nicht angezeigt wird funktioniert das auch nicht.
Kann mir da jemand helfen ?

MfG

Sergej 12. Aug 2007 17:53

Re: Application.Minimize beim Start
 
Öhm wenn du die Form nicht brauchst, warum erzeugst du sie dann überhaupt, um sie dann wieder zu verstecken... :gruebel:

ebber 12. Aug 2007 18:13

Re: Application.Minimize beim Start
 
Ich brauche die Form schon. Da kann man diverse einstellungen machen, aber da muss man nicht jedes mal ran. Es wird im Normalfall was über globale Hotkeys gesteuert und dabei brauche ich die Form nicht.

MfG

xaromz 12. Aug 2007 18:15

Re: Application.Minimize beim Start
 
Hallo,

dann erzeuge das Fenster doch dynamisch, wenn es benötigt wird.

Gruß
xaromz

ebber 12. Aug 2007 18:45

Re: Application.Minimize beim Start
 
Das geht nicht, oder ? Denn in der Form sitz mein ganzer code.

kalmi01 12. Aug 2007 21:22

Re: Application.Minimize beim Start
 
Moin moin,

den Bedarf kenn ich, die Lösung:

- AlphaBlend := true
- AlphaBlendValue := 0
- Visible := false

ist zwar : "vom Rücken durch die Brust ins Auge"
geschossen, aber geht.
Blinkt und blitzt nichts.

Eventuell noch "hidden" setzen und schon bleibt die Anwendung unsichtbar.
Kann aber bei Bedarf am Screen stehen.

Nicht elegant, aber einfach pragmatisch.

godlike 13. Aug 2007 00:14

Re: Application.Minimize beim Start
 
Hallo.

Ich hätte noch eine Frage hierzu:

Wenn ich AlphaBlend auf true setze und den Value auf 0, dann ist das Form am Anfang nicht sichtbar, ja. Soweit so gut, mein Programm hat ein TrayIcon, darüber kann man es sichtbar machen, nun ist es ja ziemlich doof, wenn der Taskbareintrag von meinem Programm trotzdem vorhanden ist - was leider aber so ist. Wie bringe ich den weg?

Methoden wie:
Delphi-Quellcode:
ShowWindow( Application.Handle, SW_HIDE );
SetWindowLong( Application.Handle, GWL_EXSTYLE,
                 GetWindowLong(Application.Handle, GWL_EXSTYLE) or
                 WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW);
ShowWindow( Application.Handle, SW_SHOW);
... funktionieren leider nicht. Hat jemand eine Idee?

\\€dit:

Es gibt ja den Eintrag Application.MainFormOnTaskBar, was aber auch nichts nützt, wenn ich den auf false setze ... \:

calculon 13. Aug 2007 00:39

Re: Application.Minimize beim Start
 
Guckst du hier:

Delphi-Quellcode:
program Program1;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1};

{$R *.res} 

begin
  Application.Initialize;
  Application.ShowMainForm := False;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
Bin nicht sicher, ob das das ist was du brauchst...

godlike 13. Aug 2007 21:02

Re: Application.Minimize beim Start
 
Funktioniert prima, danke.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:45 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 by Thomas Breitkreuz