![]() |
mehrere Formulare gleichzeigig
Liste der Anhänge anzeigen (Anzahl: 1)
Hab da mal ein blödes anliegen,
ich möchte gerne mehrere Formulare als Hauptfenster aneinander setzen, die sich auch beim Programmstart alle öffnen und man diese allerding unabhängig voneinander dann auch verschieben kann. Ich möcht das ich z.B. Form2 und Form3 einzeln verschieben kann und beim verschieben von Form1 sollen alle drei gleichzeitig als ein Formular verschoben werden Vielleicht kenn jemand diesen effekt, als verständnis hab ich ein kleines Bild angehängt. Mein Problem iss nun das ich diese drei Formulare hab, und beim OnCreate des ersten Formulares wollt ich die anderen beiden öffnen lassen, bekomm nur bei Start ne Zugriffsverletzung. Wie kann man das nun hinbekommen das alle drei öffnen. |
Re: mehrere Formulare gleichzeigig
im quelltext des programms die formulare nach deren erzeugung sichtbar machen.
|
Re: mehrere Formulare gleichzeigig
Zitat:
P@Tti |
Re: mehrere Formulare gleichzeigig
Ja Danke habs nun hinbekommen, nun noch eins, gibt es eine leichte Methode z.B. im OI die Fenster aneinanderzustellen oder muss ich manuell alles Fenster Positionieren.
|
Re: mehrere Formulare gleichzeigig
Wenn du mit "aneinanderstellen" auch meinst, dass die Fenster so wie oben beschrieben aneinader kleben und miteinander verschoben werden, dann musst du dies wohl "per Hand" im Quelltext machen.
|
Re: mehrere Formulare gleichzeigig
genau das meinte ich und danke, ich dachte es gäbe irgendeine einstellung dafür, dann muss ich wohl eben in den sauren Apfel beissen
|
Re: mehrere Formulare gleichzeigig
Hi,
die obersten beiden Fenster könnte man eventuell schon mal mit der Funktion TileWindows() nebeneinander setzen.
Delphi-Quellcode:
So in etwa.
var
r: TRect; WndList: array[0..1] of HWND; begin r:= screen.WorkAreaRect; inc(r.Left, 100); inc(r.Top, 100); dec(r.Bottom,300); dec(r.Right, 100); WndList[0]:= self.Handle; WndList[1]:= form2.Handle; TileWindows(0, MDITILE_VERTICAL, @r, high(WndList)+ 1, @WndList); |
Re: mehrere Formulare gleichzeigig
Zitat:
Delphi-Quellcode:
(Projekt -> Quelltext anzeigen)
program Project1;
uses Forms, Unit1 in 'Unit1.pas' {Form1}, Unit2 in 'Unit2.pas' {Form2}, Unit3 in 'Unit3.pas' {Form3}; {$R *.res} begin Application.Initialize; Application.MainFormOnTaskbar := True; Application.CreateForm(TForm1, Form1); // 1.Form wird erzeugt, Form1.FormCreate wird aufgerufen Application.CreateForm(TForm2, Form2); Application.CreateForm(TForm3, Form3); Form2.show; // hier Form3.show; Application.Run; end. Form1.OnShow wird immer aufgerufen wenn Form1 sichtbar gemacht wird (Visible auf True gesetzt wird). Und das gleichzeitige bewegen musst du selber machen, ![]() |
Re: mehrere Formulare gleichzeigig
Zitat:
|
Re: mehrere Formulare gleichzeigig
Zitat:
Und alle anderen danke ich für Ihr Codes und antworten. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:56 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