4

此代码适用于 VCL 表单应用程序中的 IDE 生成表单:

Self.ParentBackground := True;


但为什么?TForm上级( , TCustomForm, )均未TScrollingWinControl公布受保护ParentBackgroundTWinControl. 单元顶部的表单(fi 'TForm1')的类型声明也没有。事实上,正如预期的那样,这

TForm(Self).ParentBackground := True;

不编译(“无法访问受保护的符号 TWinControl.ParentBackground”)。与在运行时创建的任何表单相同。


注意:问题在于如何设置属性(顺便说一句,还有其他属性,例如“Bevel [xxx]”),我想知道它是如何工作的。

4

2 回答 2

7
Self.ParentBackground := True;

编译是因为一个类可以访问它自己的受保护成员。

于 2012-08-22T19:23:11.183 回答
4

TForm1(Self).ParentBackground有效。不同的是类TForm1Self所属的)是在同一个单元中声明的;那么您确实可以访问受保护的成员。

于 2012-08-22T19:22:44.117 回答