首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

.dfm 格式咋解释?解决方案

2012-08-08 
.dfm 格式咋解释?FORM 的 HelpDialogs.dfm 格式如下怎么从 .dfm 格式中(实际上是在可执行文件的 RCData 节

.dfm 格式咋解释?
FORM 的 HelpDialogs.dfm 格式如下

怎么从 .dfm 格式中(实际上是在可执行文件的 RCData 节)取得属性 Caption 的初始值(按钮的 Caption 的值在运行时可能已经改变)。

inherited HelpDialog: THelpDialog
  object : btnAbort TBitBtn
  Caption = #20851#20110'...'
  OnClick = btnAboutClick
  end
end


[解决办法]
重载组件的Loaded()方法,这时读到的属性值肯定是原始的。

再底层的方法可以用vcl的TReader类,可以参考bcb6的Example中的多语言设置的列子,Reinit.pas这个文件。
[解决办法]
哇塞 C++builder版里有个300分的帖子 我没看错 真没看错
[解决办法]
Loaded()原则上只被调用一次,在form中甚至先于TForm的构造函数被调用,在Loaded()中保存你要的原始值就可以了。注意重载TForm的Loaded的函数中使用类变量有可能出错的,可以使用静态变量或全局变量。
[解决办法]
头一次看到这么高分的帖子啊
话说运行时怎么读出可执行文件中的RCData节?还是直接读dcm文件?

热点排行