如何在Delphi FMX应用程序中克隆TPanel



我正在使用FMX构建一个应用程序。此应用程序将在Windows、Mac OSX和Linux上运行。

我需要克隆一个包含在另一个TPanel中的TPanel

FMX中提供的克隆功能抛出错误:

未找到类TForm1。

如何在FMX应用程序中克隆TPanel

这是我正在使用的代码:

procedure TForm1.Button1Click(Sender: TObject);
var
CurrentControl, ClonedControl: TFMXObject;
CtlrNameCnt: String;
begin
CtlrNameCnt := IntToStr(Panel1.ControlsCount);
CurrentControl := Panel1;
ClonedControl := Clone(CurrentControl); //<- this gives error
ClonedControl.name := CurrentControl.name + '_' + CtlrNameCnt;
ClonedControl.Parent := Panel1;
end;

我在代码中犯了两个主要错误。

以下是工作没有任何问题的代码:

procedure TForm1.Button1Click(Sender: TObject);
var
CurrentControl, ClonedControl: TFMXObject;
CtlrNameCnt: String;
begin
CtlrNameCnt := IntToStr(Panel1.ControlsCount);
CurrentControl := Panel1;
ClonedControl := Panel2.Clone(CurrentControl); //<- this Works now!
ClonedControl.name := CurrentControl.name + '_' + CtlrNameCnt;
ClonedControl.Parent := Panel1;
end;

TIA-

Yogi Yang

最新更新