ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码

Delphi中的Sender:TObject对象解析(1/2)

来源:网络整理     时间:2017-08-15     关键词:

本篇文章主要介绍了" Delphi中的Sender:TObject对象解析",主要涉及到方面的内容,对于Delphijrs看球网直播吧_低调看直播体育app软件下载_低调看体育直播感兴趣的同学可以参考一下: Delphi中的Sender:TObject对象解析procedure TForm1.Button1Click(Sender: TObject);beginen...

Delphi中的Sender:TObject对象解析

procedure TForm1.Button1Click(Sender: TObject);

begin

end;

解析:Procedure是过程,TForm是窗体类,加上数字就是某个窗体,像TForm1就是Form1窗体。

Button1是你的按钮控件的名称,Button1Click就是按钮的单击事件,(Sender:Tobject)就是发送消息到对象,这里默认为本窗体。

Sender的类型是Tobject,是Tobject的派生类。

Delphi中Sender对象

1.Sender的定义:

每一个事件处理里面至少都有一个Sender参数。比如:

procedure TForm1.Button1Click(Sender:TObject);

begin

...

end;

Sender的含义就是代表调用TForm1.Button1Click这个过程的控件. 

由于Sender是TObject,所以任何object都可以赋给Sender.当你点击BUTTON1时,会产生一个Button1Click事件,系统会把Button1传递给Button1Click过程作为参数,也就是所说的Sender.

2.Sender的用法:

<1>.由于Sender代表了调用所在过程的控件,那么你就可以直接把它拿来当那个控件用,不过如果要用属性的话,最好写成(Sender as 控件名).控件属性:=... 例如:

procedure TForm1.Edit1Click(Sender: TObject);

begin

with Sender as TEdit do

begin

text:=’hello’;

end;

end;

再比如:

Procedure   TForm1.Button1Click(Sender:TObject); 

begin 

      if   Sender   is   TButton   then 

            showmessage((Sender   as   TButton).Caption) 

      else 

            showmessage( '没有Sender ') 

end; 

如果你这样调用 

Procedure   TForm1.button2.click(sender:Tobject); 

begin 

      Button1Click(nil); 

end; 

则返回 '没有Sender ' 

而如果你这样调用 

Procedure   TForm1.button2.click(sender:Tobject); 

begin 

相关图片

相关文章