Delphi中的RTTI(100分)

  • 主题发起人 主题发起人 MrMengyi
  • 开始时间 开始时间
M

MrMengyi

Unregistered / Unconfirmed
GUEST, unregistred user!
相对简单,如何发现组件的属性、方法(实际是函数指针)
以及怎样对属性进行设置
 
1.取得属性
TTypeInfo * ti = (TTypeInfo*)comp->ClassInfo();
2.属性的数量(包括事件)
GetTypeData(ti)->PropCount;
3.取得所有的属性(count就是2中得到的那个值)
PPropList PropList;
PropList = new PPropInfo[count];
GetPropInfos(ti, PropList);
4.访问属性
类型
Typinfo::TTypeKind type = PropType(comp, pi->Name);
值(这里是访问字符串)
strValue = GetStrProp(comp, pi);
SetStrProp(comp, pi, Value);
 
以前看见的比较全的RTTI资料
http://blog.csdn.net/coolbaby/archive/2005/10/14/503914.aspx
 
后退
顶部