【发布时间】:2020-07-01 07:39:36
【问题描述】:
我有几个表单类的继承级别,我想合并其中的两个。
TMyFormA = class(TForm)
// X
end;
TMyFormB = class(TMyFormA)
// Y
end;
我需要将TMyFormA 和TMyFormB 合并到一个独特的类中,以便拥有一个TMyFormMerged 类型,其中包括来自TMyFormA 和TMyFormB 的所有内容(字段、视觉组件、事件.. ..)。
TMyFormMerged = class(TForm)
// X
// Y
end;
是否有自动嵌入功能或任何其他可以帮助做到这一点的东西?
【问题讨论】:
-
是的,有嵌入式功能。 Ctrl+C 然后 Ctrl +V
-
如果这适用于 A -> B,那么最好使用 Ctrl-X 和 Ctrl-V 作为组件。否则,您将在表单 B 中以需要不同名称的双组件结束。
-
通用组件我可以这样做,但我也有 DevExpress TdxRibbon 有很多项目,不允许 Ctrl+C/Ctrl+X 和 Ctrl+V
-
如果您不能直接复制粘贴组件,那么将表单作为文本打开并复制该文本就可以解决问题(通常)。如果我没记错的话,继承的控件将在 dfm 中标记为继承而不是对象,因此您需要更改它。
-
对不起,你修改后的 q 比以前更不清晰了。如果 TFormA 具有 X 并且 TFormB 从 TFormA 下降并添加 X,则 TFormB 已经 具有 X 和 Y 那么究竟您期望“合并”以实现这一点有什么不同?
标签: delphi