请问一个简单的问题,关于OnClick事件的问题?

chyf212 2003-06-03 11:42:51
小弟在初学Delphi时碰到这样一个问题:
关于Button控件的OnClick事件应怎样使用的问题?
Onclick应该怎样赋值啊?是怎样一个格式啊?
例如通过Button1按钮的OnClick事件,把选中的内容排列好"保存"在ListBox列表框里,
这段程序该怎么写啊?望众高手不吝赐教.
...全文
32 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
erp2 2003-06-12
  • 打赏
  • 举报
回复
onclick是TNotifyEvent类型而你自己定义的click是procedure类型不能直接附值.
所以Button1.OnClick=click这种写发肯定不行.
有两种方法你可以试试:
1.定义action
然后将action附值给button的action
2.定义一个类比如
type
Tselfclass = class(Twincontrol)
procedure Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
published
end;

然后你可以写
procedure Tselfclass.click(Sender: TObject)
begin
...
end;

然后可以进行如下的附值过程:
Button1.OnClick:=selfclass.onclick;
fhuibo 2003-06-05
  • 打赏
  • 举报
回复
直接双击button1,
在begin end之间直接写就行了
ListBox1.item.clear;
ListBox.item.add('ddddxxxx');
江山易改 2003-06-05
  • 打赏
  • 举报
回复
写好一个过程,然后Button1.OnClick := 过程名
就可以动态调用过程了
yixia 2003-06-04
  • 打赏
  • 举报
回复
双击button
看到事件过程,如果自定义,动态给事件
那么你的过程必须和刚才双击的格式一样,或者是类型一样,就是过程的参数,返回值(如果有)和acl规定的一致
你就可以动态负值给button.onclick=你的过程名,楼上的说的清楚

while ...
listbox1.items.add(字符串)
zhaofuquan 2003-06-04
  • 打赏
  • 举报
回复
一般情况下,双击即可,也可自己定义函数,函数格式根据不同的事件有不同的格式,比如
Button1.OnClick=的格式应该如下:
Procedure click (Sender :TObject)
begin
ShowMessage('Hello');
end;
Button1.OnClick=click;
chyf212 2003-06-04
  • 打赏
  • 举报
回复
Button1.OnClick=??????后面该怎么写?有格式规定吗?
黄海之滨渔夫 2003-06-04
  • 打赏
  • 举报
回复
直接双击button1,
在begin end之间直接写就行了
ListBox1.item.clear;
ListBox.item.add('ddddxxxx');
allsb 2003-06-04
  • 打赏
  • 举报
回复
Button1.OnClick是不行的,应该用Button1.Click进行调用
microjuz 2003-06-04
  • 打赏
  • 举报
回复
Button1.OnClick=click
干嘛要写成这个样子
那用tactionlist好了,写个action,赋给onclick
Button1.OnClick=click;
=改成:=
这个也不晓的??
chyf212 2003-06-04
  • 打赏
  • 举报
回复
Button1.OnClick=click;显示出错?该怎么办啊?

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧