我是初学者
自己申请的过程为什么必须加(Sender: TObject)?
为什么即使不传递这个参数也必须加它呢?
另外 参数中没有这个也不报错? 为什么?
    procedure FormCreate(Sender: TObject);
    procedure haha();//自己申请的过程,没有(Sender: TObject)却报错
    procedure ToolButton1Click(Sender: TObject);
    procedure ToolButton2Click(Sender: TObject);
    procedure ToolButton3Click(Sender: TObject);
    procedure ToolButton4Click(Sender: TObject);
  private

解决方案 »

  1.   

      procedure FormCreate(Sender: TObject);
    //  procedure haha();//自己申请的过程,没有(Sender: TObject)却报错
      procedure ToolButton1Click(Sender: TObject);
      procedure ToolButton2Click(Sender: TObject);
      procedure ToolButton3Click(Sender: TObject);
      procedure ToolButton4Click(Sender: TObject);
      private
    //放在private/public/protected下面就行了
      procedure haha();//自己申请的过程,没有(Sender: TObject)却报错
      

  2.   

    Delphi中Procedure如果没有参数就不能加括号的吧?
    例如: procedure pro;
          procedure pro(a, b: string);
      

  3.   

    不会的,Sender参数一般用于事件中,标识这个事件是那个控件的,相当于C/C++的this指针一样,之所以是TObject类型的是因为所有控件都是从Tobject继承的。
      

  4.   

    你在网上找下sender和self的用法和区别你就知道为什么了