注意:是访问子类继承的父类的属性,而不是父类的属性。

解决方案 »

  1.   

    多态啊!Virtual;或者Dynamic即可。
    子类必须重载父类的方法。
      

  2.   

    你指的是类型与子类型的适应吧。也就是说在使用父类的地方用子类代替,这完全可以。例如:
    procedure Form1.Button1Click(Sender: TObject)
    var
      id: Integer;
    beign
      id := (Sender as TButton).Tag;
      //or: id := TButton(Sender).Tag;
      ...
    end;
    这里的TObject就是TButton的父类。
      

  3.   

    用TClass类型的变量作为"子类型"吧,不知能不能满足你"变值"的需要.