unit multi1;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls,
  FMX.Layouts, FMX.Controls.Presentation, FMX.MultiView, FMX.ListBox,
  FMX.TreeView;

type
  TForm1 = class(TForm)
    MultiView1: TMultiView;
    Base: TLayout;
    Layoutprincipal: TLayout;
    ToolBar1: TToolBar;
    Button1: TButton;
    ListBox1: TListBox;
    ListBoxItem1: TListBoxItem;
    ListBoxItem2: TListBoxItem;
    ListBoxItem3: TListBoxItem;
    TreeView1: TTreeView;
    TreeViewItem1: TTreeViewItem;
    TreeViewItem2: TTreeViewItem;
    TreeViewItem6: TTreeViewItem;
    TreeViewItem3: TTreeViewItem;
    TreeViewItem4: TTreeViewItem;
    TreeViewItem5: TTreeViewItem;
    TreeViewItem7: TTreeViewItem;
    procedure ListBoxItem1Click(Sender: TObject);
    procedure ListBoxItem2Click(Sender: TObject);
    procedure ListBoxItem3Click(Sender: TObject);
    procedure TreeViewItem1Click(Sender: TObject);
    procedure TreeViewItem3Click(Sender: TObject);
    procedure TreeViewItem7Click(Sender: TObject);

  private
    { Private declarations }
    FActiveForm: Tform;
    procedure FormOpen (aForm: TcomponentClass);
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.fmx}

uses lyempresa,lycliente,lyempleados;

{ TForm1 }

procedure TForm1.FormOpen(aForm: TcomponentClass);
var
    i: integer;
begin
if (FActiveForm = nil) or (Assigned(FActiveForm) and
(FactiveForm.ClassName <> aForm.ClassName)) then
 begin
   for i:= Layoutprincipal.ControlsCount -1 downto 0 do
       Layoutprincipal.RemoveObject(Layoutprincipal.Controls[i]);

   Factiveform.DisposeOf;
   Factiveform:= nil;

   Application.CreateForm(aForm, FactiveForm);
   Layoutprincipal.AddObject(TLayout(FactiveForm.FindComponent('Layouthijo')));

 end;

 Multiview1.HideMaster;
end;

procedure TForm1.ListBoxItem1Click(Sender: TObject);
begin
  FormOpen(Tempresa);
end;

procedure TForm1.ListBoxItem2Click(Sender: TObject);
begin
  FormOpen(Tcliente);
end;

procedure TForm1.ListBoxItem3Click(Sender: TObject);
begin
  FormOpen(Templeados);
end;

procedure TForm1.TreeViewItem1Click(Sender: TObject);
begin
  FormOpen(Tempresa);
end;

procedure TForm1.TreeViewItem3Click(Sender: TObject);
begin
 FormOpen(Templeados);
end;

procedure TForm1.TreeViewItem7Click(Sender: TObject);
begin
   FormOpen(Tcliente);
end;

end.
