![]() |
VCL Formular in ein Panel einbetten
Im Formular "Form1" befindet sich ein Panel.
Auf diesem Panel soll ein zweites Formular "Form2" eingebettet werden. Es sollen aber nicht nur die Komponenten eingebettet werden, sondern auch die Funktionsweise. Ich verwende ein VCL Formular. Suchfunktion habe ich schon verwendet. Trotzdem bekomme ich es anhand des Beispiels nicht hin. ![]() Was mache ich falsch? Hier ist mein aktueller Code:
Code:
unit parent;
interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, child; type TForm1 = class(TForm) Panel1: TPanel; procedure FormCreate(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin Form1 := TForm1.Create(Panel1); Form1.Parent := Panel1; Form1.SetBounds(10,10,Form2.Width, Form2.Height); Form1.FormStyle := fsNormal; // Hatte diese Zeile vergessen Form1.Visible := true; end; end.
Code:
unit child;
interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls; type TForm2 = class(TForm) btnCalc: TButton; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Label1: TLabel; procedure btnCalcClick(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form2: TForm2; implementation {$R *.dfm} procedure TForm2.btnCalcClick(Sender: TObject); begin edit3.Text:=edit1.Text+edit2.Text; end; end. |
AW: VCL Formular in ein Panel einbetten
Hallo,
Delphi-Quellcode:
Ich dachte, du wolltest Form2 erstellen.
procedure TForm1.FormCreate(Sender: TObject);
begin Form1 := TForm1.Create(Panel1); |
AW: VCL Formular in ein Panel einbetten
Zitat:
Was ist jetzt genau mein Fehler? |
AW: VCL Formular in ein Panel einbetten
Hallo,
alt
Delphi-Quellcode:
neu
procedure TForm1.FormCreate(Sender: TObject);
begin Form1 := TForm1.Create(Panel1);
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin Form2 := TForm2.Create(Panel1); |
AW: VCL Formular in ein Panel einbetten
Außerdem: Wenn möglich, nimm Frames statt Forms, wenn du es einbetten willst.
|
AW: VCL Formular in ein Panel einbetten
Warum willst du ein Auto in den Kofferraum eines anderen Autos packen? :roll:
|
AW: VCL Formular in ein Panel einbetten
Zitat:
Zitat:
Weist du eigentlich wie viele Windows ich in einem anderen Parke? Überlege mal was ein Button ist.. Vielleicht will er genau das damit bezwecken.. lediglich die Form als Fenster(Window) zweckentfremden. Ein Auto-Fahrzeugtransporter tut nichts anderes. ;) gruss |
AW: VCL Formular in ein Panel einbetten
Deswegen Frage ich ja. Und ja ich weiß was Schaltflächen und andere Kontrollelemente sind. Aber eine Schaltfläche ist kein Hauptfenster und kann es nicht sein. Und wenn du ein Auto mit einem Auto transportierst, dann benutzt du ein Auto, was dafür gedacht ist. Im Falle der VCL wären das, wie oben schon gesagt, Frames.
|
AW: VCL Formular in ein Panel einbetten
Zitat:
Abgesehen davon das es noch erwünscht ist.. macht man ja heute nicht mehr. Zitat:
gruss |
AW: VCL Formular in ein Panel einbetten
Zitat:
Es können gerne auch andere antworten. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:28 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