![]() |
Form in Taskleiste anzeigen lassen
Hallo Leute
Ich arbeite an einem Programm was bisher aus 1 Main-Form und 3 weiteren Formularen besteht. Ich möchte gerne 1 dieser Weiteren Formulare in der taskleiste anzeigen lassen... ist das theoretisch möglich? Liebe Grüße stho |
Re: Form in Taskleiste anzeigen lassen
Hallo,
ja das ist möglich. Um dem zweiten Fenster einen eigenen Eintrag in der Taskleiste zu spendieren, musst du folgende Funktion z.B. im FormCreate aufrufen:
Delphi-Quellcode:
Ciao Chris
SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_APPWINDOW);
|
Re: Form in Taskleiste anzeigen lassen
Hast Du einmal versucht, CreateParams zu überschreiben?
Delphi-Quellcode:
[edit] Um Sekunden zu spät *grmpf* [/edit]
type
TZweitForm = class(TForm) ... protected procedure CreateParams(var Params: TCreateParams);override; ... end; ... procedure TZweitForm.CreateParams(var Params: TCreateParams); begin inherited; Params.ExStyle := Params.ExStyle or WS_EX_APPWINDOW; end; |
Re: Form in Taskleiste anzeigen lassen
Huhuuuuuuuuu *freuuuuuuuuuuuu*
Es klappt :thumb: Vielen Herzlichen Dank!!! [Edit] Aber eine Frage hätte ich trotzdem noch :oops: Die beiden anderen Formulare legen sich immer über das Hauptformular... ich kann das Haupt-Formular also nicht in den Vordergrund holen :-( Wie mache ich das denn? |
Re: Form in Taskleiste anzeigen lassen
Delphi-Quellcode:
oder
Application.MainForm.BringToFront
Delphi-Quellcode:
fallen mir spontan ein. Versuch mal einfach ;)
SetForegroundWindow(Application.MainForm.Handle)
|
Re: Form in Taskleiste anzeigen lassen
nun, ich bedanke mich schonmal bei dir für die schnelle Hilfe :-)
Bin noch relativ unerfahren was Delphi anbelangt,,, :oops: (naja, jeder fängt mal klein an ^^) aber was sind das was du dort benannt hast? Eigenschaften oder Prozeduren? Wo muss ich die auf rufen? Das sieht mir danach aus als würden sie die Haupt-Form in den Vordergrund bringen. (naja, im prinzip will ich das doch am besten nicht als einmaligen aufruf sondern eher als dauerhafte eigenschaft ^^) Denn Momentan verdecken beide meine Formen die Haupt-Form :-( (Wenn man auf den Kopf von einem Fenster klickt soll das automatisch im Vordergrund stehen. So wie bei normalen sich überlappenden Windoof-Ordnern) :gruebel: |
Re: Form in Taskleiste anzeigen lassen
Zeigst du die weiteren Formulare mit Show oder ShowModal?
ShowModal hat nämlich die Wirkung wie du sie beschrieben hast. |
Re: Form in Taskleiste anzeigen lassen
ich rufe die formulare mit
Form2.visible := True; auf... :-( Hoffe das beantwortet deine Frage. Wüsste sonst nicht wie ich sie beantworten sollte... |
Re: Form in Taskleiste anzeigen lassen
Versuchs mal mit
Delphi-Quellcode:
Form2.Show;
|
Re: Form in Taskleiste anzeigen lassen
ja, die form wird ja auch gezeigt. es ist nur leider nicht möglich form1 in den vordergrund zu holen... form 2/3 liegen immer darüber. ich muss die immer umständlich zur seite schieben um an form1 zu kommen (was nen bissel doof ist)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:14 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