mam*_*mcx 6 delphi delphi-xe2 firemonkey
我试图在Scrollbox中嵌入一个表单:
procedure TfrmMain.FormCreate(Sender: TObject);
var
Control:TControlView;
begin
Control := TControlView.Create(Self);
Control.BorderIcons := [];
Control.parent := ListControls;
Control.width := 800;
ListControls.AddObject(Control);
Control.Visible:= True;
end;
Run Code Online (Sandbox Code Playgroud)
然而,表格显示在tfrmMain后面和表格的边缘之外.
我的想法是在一个面板中放置一个表单,并且都在滚动框内.每个表单代表一个复杂的项目,有几个控件和东西(不使用ListBox的原因?Firemonkey控件创建比简单地执行一个表单并嵌入它要困难得多)
秘诀在于您如何设计您的孩子表格.
您需要将控件创建为容器,例如TLayout(无样式),TRectangle(基本样式)或TPanel.我会选择TLayout.确定容器的名称,为了参数说"容器".现在创建子表单并简单地将Parent的Parent分配给父对象.
所以,从上面的代码(我假设TControlView是你的子表单):
procedure TfrmMain.FormCreate(Sender: TObject);
var
Control:TControlView;
begin
Control := TControlView.Create(Self);
Control.Container.parent := ListControls;
Control.Container.width := 800;
end;
Run Code Online (Sandbox Code Playgroud)