如何让组件的 属性 保持为零?

How can I get a property of an component to stay nil?

我的表单上有一个组件 (TPushEvents)。我已经明确地从其中一个属性中删除了值 (Provider)。

我已将其保存并签入源代码管理。我可以看到 属性 确实从 fmx 文件中删除了。这是我清空 属性 并保存表格后条目的样子:

object PushEvents1: TPushEvents
  Left = 128
  Top = 200
end

如果我关闭项目并重新打开它,属性 将被重新添加并重置为默认值(它指向它可以在表单上找到的第一个 T*Provider 组件 -在我的例子中是 TKinveyProvider)。在发布模式下构建时,这让我感到各种悲伤。这是我重新打开项目保存表单后条目的样子:

object PushEvents1: TPushEvents
  Provider = KinveyProvider1
  Left = 128
  Top = 200
end

并且确实保存了它,我可以看到 属性 已经返回到 fmx 文件中。

FormCreate 中将 属性 设置为 nil 是不好的,因为 TPushEventsFormCreate 之前开始访问 TKinveyProvider被触发。

如何在重新加载项目时保留TPushEvents.Provider 属性 nil

在我的理想世界中,我可以输入一个常量,允许它在 fmx 文件中保留 属性,但仍然表明它没有指向任何东西。

我找到了一个不太理想的解决方案。

如果我将 TPushEvents 组件的整个创建移动到 FormCreate 中,那么当我重新创建时,我不必担心 RAD Studio "fixed" 组件- 打开我的项目。

它不太理想的原因是,如果我遵循产品的明显理念(将组件放在表单上而不是在代码中创建它们),那么这肯定会超出该模型。