我对调用过程很不懂,很多时候都是随便写着试的,比如:
T1Click(self);
T1Click(Sender);
不明白各自代表着什么意思。
另外假如我的过程下面有一个var自定义的参数,我怎样在调用过程的时候给这个var赋值,只能T1Click(i:integer);这样的过程参数写法才能在调用的时候赋值吗?
还有T1Click(Sender: TObject);括号里的Sender: TObject代表着什么意思?

解决方案 »

  1.   

    T1Click(self),意思是调用自身
    T1Click(Sender),意思是把自己的所有方法传下来吧。
    var下面的,赋值的都是局部变量,只能在过程里面使用。
    T1Click(i:integer),里面的I是参数,调用的时候能赋值。
    T1click(Sender:TObject),里面括号意思是,过程基层TObject吧这是我个人理解,希望和楼主多多交流哈。
      

  2.   

    一、调用参数
    定义在类中过程或函数一般称为方法,类的方法
    T1Click是方法名称,括号是传给这个方法的参数。从名称看你这个应该是处理T1控件单击事件的“事件处理方法”
    它有一个参数,类型是TObject,代表的是触发这一单击事件的对象二、引用参数与值参数
    var定义的参数表示是“变量参数”,是引用传递,它的值在调用完成后会带回调用处
    相应是值传递,在调用完成后它的值不会带回
    比如:procedure MyFunc(p1: Integer; var p2: Integer);
    begin
      p1 := p1 + 1;
      p2 := p2 + 1;
    end;procedure TForm1.Button1Click(Sender: TObject);
    var
      a1, a2: integer;
    begin
      a1 := 1;
      a2 := 1;
      ShowMessage(IntToStr(a1) + ':' + IntToStr(a2));
      MyFunc(a1, a2);
      ShowMessage(IntToStr(a1) + ':' + IntToStr(a2));
    end;a1和a2在调用前都是1,但在调用后a2变成了2,而a1仍然是1