AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Taskbareintrag bei neuem Form aus Objekt

Ein Thema von kaiser1401 · begonnen am 22. Nov 2010 · letzter Beitrag vom 23. Nov 2010
 
kaiser1401

Registriert seit: 6. Mär 2006
Ort: Gescher
157 Beiträge
 
Delphi 7 Professional
 
#1

Taskbareintrag bei neuem Form aus Objekt

  Alt 22. Nov 2010, 16:08
Hallo,

mal wieder eine Taskbar-Frage da ich leider nichts passendes finde

Ich habe ein Objekt das über eine Methode ein Formular erstellt und dieses Modal anzeigt.

Dieses Formular soll das einzige Formular der Anwendung sein, wenn möglich also das MainForm. Nach dem Schließen des Formulars soll die Anwendung sich schließen.

Der Programmablauf ist also in etwa

Objekt erzeugen
mit dem Objekt was machen
irgendwann das Formular des Objektes modal anzeigen
Programm beenden

Dafür habe ich zunächst den ganzen Application.Inizialize/Run... Kram etc aus der Hauptunit entfernt und arbeite dort lediglich mit meinem Objekt. Mein Problem ist nur, dass wenn ich das Formular minimiere es nicht auf der Taskbar liegt, sondern darüber. Einen Taskbareintrag gibt es allerdings durchgehend auch.

Nächste Idee war Ein Dummy Formular als Mainform zu erzeugen und mein Objekt im OnCreate des Dummys zu erzeugen:
Delphi-Quellcode:
  Application.Initialize;
  Application.Title := 'Meine App';
  Application.CreateForm(TAppMainForm, AppMainForm);
  Application.ShowMainForm:=false;
  Application.Run;

//----------------

  procedure TAppMainForm.FormCreate(Sender: TObject);
   var MyObject:TMyObject;
begin
  [..]
  MyObject.ShowForm; // Modales anzeigen intern
  freeandnil(MyObject);
  PostMessage(self.Handle,WM_CLOSE, 0, 0); // Programm beenden
end;
Funktioniert auch, hat aber den selben Effekt, dass das spätere Formular nicht in der Taskbar liegt. Oder wenn ich mit SetWindowLong(fWindow.Handle, GWL_EXSTYLE, WS_EX_APPWINDOW); arbeite eben 2 Einträge habe...

Hat irgendjemand von euch eine Idee wie ich es hin bekomme, dass das Formular des Objektes sich so verhält wie ein Mainform, also sich in die Taskbar minimiert und es nur einen einzigen Taskbareintrag gibt?

(Borderstyle des Formulars ist bsSizeable, Formstyle ist fsNormal)
inc(i);
  Mit Zitat antworten Zitat
 


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 09:25 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