给控件属性,动态运行时赋值
2015-11-02 11:15
357 查看
procedure RMSetStrProp(aObject: TObject; const aPropName: string; ID: Integer); var lStr: string; lPropInfo: PPropInfo; begin lStr := RMLoadStr(ID); if lStr <> '' then begin lPropInfo := GetPropInfo(aObject.ClassInfo, aPropName); if lPropInfo <> nil then SetStrProp(aObject, lPropInfo, lStr); end; end; function RMGetPropValue(aReport: TRMReport; const aObjectName, aPropName: string): Variant; var pi: PPropInfo; lObject: TObject; begin Result := varEmpty; if aReport <> nil then lObject := RMFindComponent(aReport.Owner, aObjectName) else lObject := RMFindComponent(nil, aObjectName); if lObject <> nil then begin pi := GetPropInfo(lObject.ClassInfo, aPropName); if pi <> nil then begin case pi.PropType^.Kind of tkString, tkLString, tkWString: Result := GetStrProp(lObject, pi); tkInteger, tkEnumeration: Result := GetOrdProp(lObject, pi); tkFloat: Result := GetFloatProp(lObject, pi); end; end; end; end;
相关文章推荐
- LeetCode Bulls and Cows
- leetcode_27_ Remove Element (easy)
- 初识UML
- css3动画模块transform transition animation属性解释
- xcode 弹出的错误 1 <Xcode cannot launch apps on the simulated device “iPhone 5s”, as it is cur>
- JSP中application session request cookie 生命周期的问题
- WebService到底是什么? .
- ActionResult 的返回类型
- 华为S5700S配置总结
- httpclient
- C++11 多线程下生产者消费者模型详解
- Android项目使用support v7时遇到的各种问题
- 在Xcode中使用Git进行源码版本控制
- 1的个数
- 浅谈Java源码
- 【转】android如何查看cpu的占用率和内存泄漏
- 周末龙泉寺行记
- java多线程问题,线程交替执行
- IOS MPMoviePlayerViewController视频播放(MediaPlayer)
- Deep Learning 备忘与总结