Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   FMX-Form in einem Layout oder Panel darstellen (https://www.delphipraxis.net/187864-fmx-form-einem-layout-oder-panel-darstellen.html)

luisk 9. Jan 2016 22:15

FMX-Form in einem Layout oder Panel darstellen
 
Kann man ein Form in einem Layout oder Panel darstellen,
so wie in C#, oder in VCL ?
C#:
http://www.codeproject.com/Questions...inside-a-Panel

Der Behelfsweg ist natürlich ein MainLayout in einem anderen plazieren.

Bei c# sorgt das Attribut toplevel dafür, dass sich das Form einbetten lässt.

mkinzler 9. Jan 2016 22:34

AW: FMX-Form in einem Layout oder Panel darstellen
 
Einfach den Parent auf das gewünschte Control setzen.

luisk 9. Jan 2016 22:37

AW: FMX-Form in einem Layout oder Panel darstellen
 
hab ich probiert, es tut sich aber nichts.
Bei C# funktioniert es erst, wenn man toplevel=false setzt.

Harry Stahl 10. Jan 2016 09:52

AW: FMX-Form in einem Layout oder Panel darstellen
 
Das geht so leider nicht unter FMX.

Du musst den Inhalt Deiner Form, die Du einbinden willst, z.B. in einem TLayout hinterlegen. Nach Erzeugung der Form nimmst Du das TLayout statt der Form, um es im Layout oder Panel anzuzeigen.

Die einzubindende Form selber musst Du auf Visible = false setzen (und zur Sicherheit mit einer Negativ-Position belegen, damit der Anwender nicht kurz die leere Form angezeigt bekommt).

Edit: Seltsam, warum gibt es hier einen zweiten Eintrag mit der gleichen Frage, die man sich aber nicht ansehen kann (Antwort war von DP-Maintenance)?

luisk 10. Jan 2016 10:57

AW: FMX-Form in einem Layout oder Panel darstellen
 
Den Weg gehe ich ja:
"Der Behelfsweg ist natürlich ein MainLayout in einem anderen plazieren."

Ich nehme ein absolutes Main_Form und die anderen legen dann Ihr Main_Layout
dort rein und nehmen es zu sich zurück, wenn sie inaktiv sind.

Ich gehe davon aus, dass Delphi dieses Attribut toplevel=false nicht berücksichtigt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:46 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz