写一句:
YourComponent.YourProperty := SomeValue;
然后Ctrl+F9,没错的话,就是可写的啦
YourComponent.YourProperty := SomeValue;
然后Ctrl+F9,没错的话,就是可写的啦
解决方案 »
- 我知道回车键是#13 ,,但是同时按ctrl+回车键chu触发事件怎么写指令?
- 如何实现Frame在XP经典主题下透明
- 数据库程序有时能执行有时不能,请问为何,如何解决?
- <<急急急>>我用BDE连接SQL SERVER 7为什么启动速度很慢。刷新也很慢。(win98+delphi6)
- 对于用穷举法来实现找到QQ的密码的程序,还可以详细点吗?
- 哪里可以找到关于机械方面的象csdn这样的论坛!100分相赠!
- 继续散分!α
- what's mean "动态链接库"
- 如何强制实现应用程序当前工作目录的转换,将c:\vfp 切换到c:\jpg ?
- 请问如何使鼠标一点MaskEdit光标就停在MaskEdit的最左侧阿
- Delphi的电子文档好多,有没有能把PDF转换成WORD文件的工具?
- 请告诉我Rxlib的下载地址?
OldProperty := YourComponent.Property;
try
YourComponent.Property :3D NewProperty;
except
YourComponent.Property :3D OldProperty;
end;
end;
—————————————————————————————————
MaximStr := '宠辱不惊,看庭前花开花落,去留无意;
毁誉由人,望天上云卷云舒,聚散任风。';
if Not Assigned(I) then
I := TI.Create(Nil);
I.Maxim := MaximStr;
—————————————————————————————————
OldProperty := YourComponent.Property;
try
YourComponent.Property :3D NewProperty;
except
YourComponent.Property :3D OldProperty;
end;
end;
—————————————————————————————————
MaximStr := '宠辱不惊,看庭前花开花落,去留无意;
毁誉由人,望天上云卷云舒,聚散任风。';
if Not Assigned(I) then
I := TI.Create(Nil);
I.Maxim := MaximStr;
—————————————————————————————————
1、用TPropInfo.SetProc判断,可以简单判断是否为nil,也可以参考TypInfo.pas中的汇编语句,当然找到相应的说明资料更好:
MOV EDI,[ESI].TPropInfo.SetProc
CMP [ESI].TPropInfo.SetProc.Byte[3],$FE
JA @@isField
JB @@isStaticMethod { SetProc is a virtual method }
MOVSX EDI,DI
ADD EDI,[EAX]
CALL dword ptr [EDI]
JMP @@exit
原谅我没有耐心去分析了。
2、如果1失败,你可以用TypInfo.pas中的SetXXXProp或SetPropValue过程来设置值,并且加上try...except以判断或防止失败。