(sender:object;)什么意思? 常见在过程定义中,什么用途? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 比如有两个按钮公用一个OnClick过程,比如是Button1Click(Sender: TObject)当你按Button1,或Button2都会触发这个过程,但Sender不一样;一个是Button1,一个是Button2。你可以在这个过程中写Showmessage(TButton(Sender).Name); 看看结果。 楼上的,我知道sender会不一样,但sender自身是什么?Tobject又是什么?请原谅,我是初学者~~~ Button1Click(Sender: TObject)pascal语言,参数的定义方式就这样,sender是参数名,tobject是参数类型,Button1Click就是过程名(或方法名) Sender就是执行该过程的对象.Sender的类型是TObject。其实是用Sender去引用具体对象,其中有个父类引用子类的概念。 如其英文原意,对象、物件,就像苹果、香蕉、梨都是水果,所有对象都可以向上兼容,认为是TObject,而其实质是传递对象指针,通过强制类型转化,告诉计算机该指针指向对象是什么! 事件处理过程一般都有至少一个参数Sender:TObject,表示触发这个事件的对象.在事件处理过程中可以靠它来对那个对象进行相应的操作,一般是把它强制转换成主调对象的类型. 我试了一下一些简单的过程,例如“关闭”按钮, procedure TForm1.exitButtonClick(Sender: TObject); begin Close; end;把其中的(Sender: TObject)去掉也一样呀? 呵呵你没有使用sender这个参数啊当然没有影响啦! 你可以这么试试:procedure TForm1.Button1Click(Sender: TObject);begin if Sender is TButton then TButton(Sender).Caption := 'Sender is button';end; 在TOBJECT类中,一般不直接访问其Caption等属性,而是用(Sender as Tbutton).Caption当类型失败时,引起异常,可提高代码安全性 如何调用XP系统自带的屏幕键盘 windows32核心API参考里面的几个问题求解:(分不够灌水也要加) 如何取出adoquery组件查询到的数据 如何把QReport报表中的最小,最大化按钮去掉啊? 初学者请教个问题。。。指针的 form 中的 可编辑的属性 是:properties? 请问大虾们,在DELPHI下怎样开发光电阅读程序,我很急! hint中的字符串为什么不显示出来????? 哪里有Delphi 5.x ADO_MTS_COM+ 的完整书下 怎么用dbgrid中的picklist建立下拉选择框??求助啊!! *****dbgrid控件问题****** ADO的问题!
Sender的类型是TObject。其实是用Sender去引用具体对象,其中有个父类引用子类的概念。
在事件处理过程中可以靠它来对那个对象进行相应的操作,一般是把它强制转换成主调对象的类型.
procedure TForm1.exitButtonClick(Sender: TObject);
begin
Close;
end;把其中的(Sender: TObject)去掉也一样呀?
你没有使用sender这个参数啊
当然没有影响啦!
procedure TForm1.Button1Click(Sender: TObject);
begin
if Sender is TButton then
TButton(Sender).Caption := 'Sender is button';
end;
(Sender as Tbutton).Caption
当类型失败时,引起异常,可提高代码安全性