Subject:
关于GetPropInfo和SetPropValue的用法疑问
[Print This Page]
Author:
jxydhzw
Time:
2008-8-29 12:53
Subject:
关于GetPropInfo和SetPropValue的用法疑问
关于GetPropInfo和SetPropValue的用法疑问
这几天在用 Dev系列的控件,比如 TcxComboBox
的确很强大.但是开发中遇到些问题.比如动态设定其属性的问题
因为这些控件有些属性是在嵌套属性当中.比如TcxComboBox的
ReadOnly属性是在其Properties属性里的.这下动态设置起来就麻烦了
之前一些属性仅仅这样就可以了
SetPropValue(FindComponent('edit1'),'ReadOnly','True');
就搞定了.但是它们的嵌套怎么搞?
我试过
SetPropValue(FindComponent('cxcmbList1'),'Properties.ReadOnly','True');
这样不行.报"Property Properties.ReadOnly does not exist"这个错.
不知道有朋友知道怎么设法吗?
Author:
Passion
Time:
2008-8-29 13:43
参考CnPack组件包的CnCommon单元里头的级联属性操作相关函数。
如:
function GetPropInfoIncludeSub(Instance: TObject; const PropName: string;
AKinds: TTypeKinds = []): PPropInfo;
{* 获得级联属性信息}
function GetPropValueIncludeSub(Instance: TObject; PropName: string;
PreferStrings: Boolean = True): Variant;
{* 获得级联属性值}
function SetPropValueIncludeSub(Instance: TObject; const PropName: string;
const Value: Variant; AOwner: TComponent = nil): Boolean;
{* 设置级联属性值}
procedure DoSetPropValueIncludeSub(Instance: TObject; const PropName: string;
Value: Variant; AOwner: TComponent = nil);
{* 设置级联属性值,不处理异常}
Welcome to CnPack Forum (http://bbs.cnpack.org/)
Powered by Discuz! 5.0.0