大佬教程收集整理的这篇文章主要介绍了为什么我的 .dfm 文件中会出现 Text = '' ?空字符串,作为默认值,不应该被存储,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
这种令人惊讶的行为的原因是什么,这似乎是在我将 Delphi 从 XE2 升级到 10.4.2 之后开始的,即将空字符串属性值存储到 .DFM 文件中?
空字符串应该是属性的内置自动默认值,即不存储。
这发生在从 TWinControl 派生的两个组件中名为 Text 的字符串属性(一个直接,另一个通过 TCustomEdit)。可能是因为 TWinControl 派生自 TControl,它也有一个名为 Text 的属性,但类型是 TCaption 而不是字符串类型?这在 XE2 中是一样的,但也许“隐藏其他属性的属性”在 10.4 中的处理方式与当时相比有所不同?
我可以通过添加一个 stored 指令 + 一个函数来解决我的 .DFM 文件中不必要的 Text = ''
的问题——但我认为我真的不应该这样做,对吗?
property Text: String read GetText write SetText stored IsTextStored;
function TMyComponent.IsTextStored: Boolean;
begin
Result := Text <> '';
end;
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
以上是大佬教程为你收集整理的为什么我的 .dfm 文件中会出现 Text = '' ?空字符串,作为默认值,不应该被存储全部内容,希望文章能够帮你解决为什么我的 .dfm 文件中会出现 Text = '' ?空字符串,作为默认值,不应该被存储所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。