FMX ne semble pas connaitre ces termes .

Après maints essais et recherches google , j'ai plus ou moins réussi une pseudo frame selon la méthode indiquée dans le wiki
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 
type
  TForm15 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Lang1: TLang;
    Layout1: TLayout;
    procedure AjouterClick(Sender: TObject);
    procedure EffacerClick(Sender: TObject);
  private
    { Déclarations privées }
    procedure EmbeddForm(AParent:TControl; AForm:TCustomForm);
  public
    { Déclarations publiques }
  end;
 
var
  Form15: TForm15;
 
implementation
 
{$R *.fmx}
 
uses Unit16;
 
procedure TForm15.AjouterClick(Sender: TObject);
begin
 EmbeddForm(Layout1, TForm16.Create(self));  // afficher la 'fausse frame'
end;
 
// équivaut a la frame 
procedure TForm15.EmbeddForm(AParent:TControl; AForm:TCustomForm);
begin
  while AForm.ChildrenCount>0 do
    AForm.Children[0].Parent:=AParent;
end;
 
procedure TForm15.EffacerClick(Sender: TObject);
begin
  Layout1.DeleteChildren;    // efface bien les enfants 
  // cependant les contrôles apparaissent toujours 
end;

si la méthode fonctionne pour l'ajout des composants , par contre impossible de l'effacer . Dans mon test , la TForm16 contient un label et un bouton . Après la procedure effacerClick le bouton et le label sont toujours visible , cependant le bouton ne fonctionne plus .

j'ai essayé plusieurs choses pour effacer :
- Encadré le deletechildren avec un BeginUpdate et EndUpdate
- Ajouté un repaint etc...
Rien n'y fait

n'y aurait t-il aucun moyen d'avoir du docking avec FMX ?! c'est bien beau des applications 'mono forme' mais pour une bonne grosse application c'est un peu léger . FMX me semble bien jeune