|
|
1
5
使用rtti而不是显式强制转换更容易,即:
|
|
|
2
7
必须将对象显式转换为某个类。 这应该有效:
这可以缩短使用“
|
|
|
3
4
在设置对象的属性之前,需要将CT对象强制转换为tmemo/tedit/tbutton。 因为CT仍然是Tclass,而不是Tbutton/etc,所以您得到错误的行是错误的。如果您强制转换为Tbutton,那么您将能够将Enabled设置为true。 我建议阅读 casting in Delphi . 我个人也建议使用as/is操作符,而不是使用classtype。在这种情况下,代码将更简单,更容易理解。 就我个人而言,我写这个更像:
|
|
|
4
3
不需要分别强制转换到tmemo和tedit,因为它们都是具有只读属性的公共父类的后代:
|
|
|
5
2
如果您不介意一个小的性能冲击并限制对已发布属性的更改,则可以避免引用各种单元和显式强制转换。看看Delphi中包含的typinfo单元。 |