即使Embarcadero没有正式支持,也有很多例子表明您可以在VCL应用程序中包含FMX表格,例如MonkeyMixer和this SO question。 但是,当我创建一个只有一个空VCL表单和一个空FMX表单的测试应用程序时,我遇到两个问题:
我该如何做到这一点?
我需要这种组合,因为我们希望我们的应用程序在Windows,Mac OS和iOS上是原生的。因此,在Windows上,它是VCL应用程序,而其他操作系统是使用TMS本机组件的FMX。我们有一些为FMX制作的大型自定义图形组件,它们也必须在Windows上运行。
修改
我只看到两种替代解决方案,我不喜欢它们:
答案 0 :(得分:2)
我需要在VCL应用中托管FMX应用以进行展示和培训。 FMX应用程序实际上是一个Android目标,VCL是一个Windows'演示者'。 FMX托管是使用托管FMX主表单的TFireMonkeyContainer完成的。是的它有轻微的皱纹,但它工作正常,我确信我们会找到改善方法的方法。
我的FMX主表单是在运行时创建的,只能看到FMX.Forms。然后将其传递给TFireMonkeyContainer,并在VCL应用程序关闭时被其销毁。