1
16
我不会说DFM是一种“内部格式”。当然,Delphi在内部将其用于表单和数据模块,但执行流式处理的treader和twriter类是公开访问的,甚至是文档化的。因此,它们显然也适用于最终用户。
现在,可能的问题是,当保存流时,流中的某个类随后发生更改,从而使流不再兼容。如果您试图打开D7中保存在D2007+中的表单(缺少属性),您可能在Delphi中看到了这一点。但即使发生了,也不难解决。您将得到一个异常,它将报告导致问题的确切属性。您还必须注册所有要流式处理的类
DFM可以二进制或文本格式存储。即使您将其存储为二进制,也可以将其转换为文本(使用
因此,由于结构中的不兼容更改,您可能会遇到一些问题,但这些问题与DFM机制本身无关,并且也会使用任何其他流机制发生。 至于使用寿命,您仍然可以在最新的Delphi中打开用d1保存的dfm。只要您记住向后兼容性,就没有什么可担心的了。 总之,任何特定格式的选择,dfm,xml,json,你自己的…不会影响寿命。它们都需要相同级别的兼容性。 选择格式的原因更多地与以下方面的决定有关:
但你没有提到问题中的任何一个。 所以我建议使用DFM覆盖您自己的,因为这意味着要维护的代码更少。 |
dev691 · 如何从同一目录加载Java类? 6 年前 |
Julien · 加载PyQt5 UI文件时出错 6 年前 |
joeyTomar · 执行分布式负载测试时出错 6 年前 |
Alexander · Ajax一次将数据加载到多个位置 6 年前 |
ap123 · Tableview插入行跳跃 6 年前 |
Adolfok3 · 显示活动并在加载其元素后显示 7 年前 |
sasha · 无法从C DLL调用函数 7 年前 |