![]() |
Re: Form ohne Animation maximieren
Hallo DBR,
Zitat:
1) Das VCL-Hide() weigert sich, MDI-Childs zu verstecken. Ist kein Problem, einfach in ShowWindow(Handle, SW_HIDE) umwandeln, dann funktiert das. :) 2) Zitat:
Ersteres kann durch Maximieren über SendMessage(Handle, WM_SYSCOMMAND, SC_MAXIMIZE, 0) umgangen werden, der zweite Punkt ist z.B. über lParam zu lösen (bei SendMessage diesen einfach z.B. auf 1 setzen und in WMSysCommand dann abfragen). 3) Aber: Zitat:
So, und an diesem letzten Punkt bin ich gescheitert... :? Vielleicht noch ein kleiner (vielleicht doch nicht ganz unwichtiger) Nachtrag: :oops: Worum es mir eigentlich geht, d.h. was ich tun will, ist folgendes: Meine Anwendung speichert beim Beenden, ob das aktive MDI-Child maximiert ist oder nicht. Beim nächsten Start der Anwendung und Öffnen eines MDI-Childs soll dieses wieder direkt im gespeicherten Zustand erscheinen (d.h. maximiert oder normal, ohne Animation). Ich hoffe auf weitere Antworten! Danke schon im Voraus! :thumb: Grüße, Marco |
Re: Form ohne Animation maximieren
Dafür hätte ich auch gerne eine Lösung, denn meine Anwendung benutzt MDI-Childs in BPLs (komplettes Anwendungsmodul in einer BPL). Wenn ich jetzt vom Hauptprogramm etwas öffne, habe ich auch diese Maximieren-Animation die zwar technisch nicht stört, jedoch nicht chic für das Auge ist.
Gruß Igotcha |
Re: Form ohne Animation maximieren
Hey, keine Ideen mehr? :(
:coder: Bitte um Hilfe :wink: Danke, Marco |
Keine Ideen?
*push* :(
|
Re: Form ohne Animation maximieren
Wenn du schon vor der eigentlichen Erstellung des Fensters weißt, ob es maximiert sein soll, dann könntest du noch versuchen, CreateParams zu überschreiben:
Delphi-Quellcode:
// im interface-Teil innerhalb der TFormN-Deklaration
// ... protected procedure CreateParams(var Params: TCreateParams); override; // ... // im implementation-Teil procedure TFormN.CreateParams(var Params: TCreateParams); begin inherited CreateParams(Params); if Maximiert then Params.Style := Params.Style or WS_MAXIMIZE; end; |
Re: Form ohne Animation maximieren
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen,
Zitat:
So, ich habe jatzt ein kleines Projekt geschrieben, welches den Sachverhalt verdeutlicht. Spielt einfach mal rum, Event-Handler & Co. sind alle (?) schon reingeschrieben, ihr könnt also direkt loslegen. Falls ihr einen Lösungsweg gefunden habt, bitte posten! :-D Ich freue mich auf euer Feedback! Gruß und Dank, Marco |
Re: Form ohne Animation maximieren
Hallo Marco,
Dir scheinen die kniffligen Fragen ja nicht auszugehen und da ich heute Nacht Wartungsdienst habe bin ich nun hier gelandet. Auch wenn es überhaupt nicht so faszinierenden Codes bedarf, könntest Du nicht einfach ein Panel im MDI Formular über den ganzen Clientbereich legen und nachdem die Clientfenster createt sind mit visible auf false verschwinden lassen. Damit würde der Fensteraufbau quasi im Untergrund passieren. Panel visible Position setzen und dann application.Processmessages. Ok, hat nicht die Faszination einer eigenen Formularcomponente...aber vielleicht... Grüße // Martin |
Re: Form ohne Animation maximieren
Also ich sehe da keine Animation. Kann es an den grafischen Einstellungen deines Betriebssystems oder an der Theme liegen, dass du bei dir eine Animation hast?
|
Re: Form ohne Animation maximieren
@Luckie: Die Animation sieht man nur wenn der Schnickschnack im Betriebssystem aktiviert ist.
|
Re: Form ohne Animation maximieren
Hallo zusammen,
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:51 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