有一些关于将FMX表格嵌入面板的代码......
http://docwiki.embarcadero.com/CodeExamples/XE5/en/FMXEmbeddedForm_(Delphi)
....我想在同一个面板中嵌入多个表单,关闭先前的表单 一个当然。我有一个问题,关闭./free那些 使用该方法从该docwiki中嵌入它们时形成。
从测试中我发现表单实际上并没有嵌入,而是将表单上的对象移动到模拟嵌入表单效果的新父级上。
在vcl中这很容易做,但在dmx中这是一个不同的球赛。
有什么想法吗?
答案 0 :(得分:0)
当您嵌入表单时,正如您所述,将嵌入表单中的某些组件重新包含在包含表单中。
如果您想删除这些组件,您可以:
然后,您可以在其中创建并重新显示另一个表单。
另请注意,您可以安全地将多个表单嵌入到一个容器表单中,但是您需要使用不同的对象作为每个表单的容器。您还可以将多个组件或组件集放在可嵌入的表单上,并将它们嵌入到容器表单的不同位置,甚至嵌入到多个表单中。
但是,您一次只能将每个控件嵌入一个表单中。
答案 1 :(得分:0)
最简单的方法是将每个表单上的透明布局作为顶级组件。
当您需要在面板中嵌入表单时,只需创建表单实例并将其父级布局更改为面板即可。 当您不需要嵌入表单时,可以将布局重新显示为其表单并释放它。