
Delphi中incompatible types: 'TNotifyEvent' and 'Pointer'的问题
varb:TButton;Form1:TForm;implementation{$R*.dfm}procedureButtonClick(Sender:TButton);...
var
b: TButton;
Form1: TForm;
implementation
{$R *.dfm}
procedure ButtonClick(Sender: TButton);
begin
ShowMessage(Sender.Name);
end;
begin
b := TButton.Create(Form1);
b.Parent := Form1;
b.OnClick := @ButtonClick; // same as b.OnClick := 'ButtonClick'(此处提示错误)
b.OnClick := nil; // clear the event
错误提示:incompatible types: 'TNotifyEvent' and 'Pointer'
求解决~~~~~~~~~~~~ 展开
b: TButton;
Form1: TForm;
implementation
{$R *.dfm}
procedure ButtonClick(Sender: TButton);
begin
ShowMessage(Sender.Name);
end;
begin
b := TButton.Create(Form1);
b.Parent := Form1;
b.OnClick := @ButtonClick; // same as b.OnClick := 'ButtonClick'(此处提示错误)
b.OnClick := nil; // clear the event
错误提示:incompatible types: 'TNotifyEvent' and 'Pointer'
求解决~~~~~~~~~~~~ 展开
1个回答
展开全部
b.OnClick := ButtonClick;
就可以了
另外
procedure ButtonClick(Sender: TButton);
改为
procedure ButtonClick(Sender: TObject);
ShowMessage(Sender.Name);
改为
ShowMessage(Tbutton(Sender).Name);
就可以了
另外
procedure ButtonClick(Sender: TButton);
改为
procedure ButtonClick(Sender: TObject);
ShowMessage(Sender.Name);
改为
ShowMessage(Tbutton(Sender).Name);
追问
不行呀 还是错的!
追答
没错误的
我编译通过的
你的代码放的位置有问题吧 给你完整代码
你看看你的代码位置错误在哪儿
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
procedure ButtonClick(Sender: TObject);
{ Public declarations }
end;
var
Form1: TForm1;
b: TButton;
implementation
{$R *.dfm}
procedure TForm1.ButtonClick(Sender: TObject);
begin
ShowMessage(Tbutton(Sender).Name);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
b := TButton.Create(Form1);
b.Parent := Form1;
b.Name:='sert';
b.Caption:='test';
b.OnClick := ButtonClick;
end;
end.

2025-02-26 广告
昇非一体化产业园(ARISE IIP)是全球领先的基础设施开发商,深耕非洲市场62年,专注于泛非设计、融资、建设和运营定制化产业园区,旨在推动非洲各国的工业化进程,缩小产业差距,促进可持续发展、出口增长与贸易扩展。昇非(ARISE IIP)...
点击进入详情页
本回答由昇非提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询