N
netbug
Unregistered / Unconfirmed
GUEST, unregistred user!
一: Delphi中动态建立控件后,它的事件的问题
请看以下的例子:
var Btn:TButton
procedure TForm1.Button1Click(Sender: TObject)
begin
btn:=TButton.create(self)
btn.parent:=self
end
procedure TForm1.BtnClick(Sender: TObject)
begin
showmessage('message')
end
但在编译时,系统提示未定义Btn,我想问:在动态建立控件后,如何
写此控件的事件?
二:我在一个有关作图的例子中,发现有:
with canvas do begin
pen.mode:=pmNot
moveto(x0,y0)
lineto(lx,ly)
end
而此例中的Canvas并不是类TCanvas生成的,我又查了graphics.pas这个文件,
其中有:
TBitmap = class(TGraphic)
........
property Canvas: TCanvas read GetCanvas
而此句的意思是说Canvas是类TBitmap的一个域,
我想问:在Delphi中,只有用类的生构造成的实例后,才可以访问它的域,
那为什么在此例中可以写成:
with canvas do begin
pen.mode:=pmNot
moveto(x0,y0)
lineto(lx,ly)
end
也就是说:这个canvas没有被create就被使用,这是为何?
Canvas与TCanvas之间有什么关系?
谢谢。
请看以下的例子:
var Btn:TButton
procedure TForm1.Button1Click(Sender: TObject)
begin
btn:=TButton.create(self)
btn.parent:=self
end
procedure TForm1.BtnClick(Sender: TObject)
begin
showmessage('message')
end
但在编译时,系统提示未定义Btn,我想问:在动态建立控件后,如何
写此控件的事件?
二:我在一个有关作图的例子中,发现有:
with canvas do begin
pen.mode:=pmNot
moveto(x0,y0)
lineto(lx,ly)
end
而此例中的Canvas并不是类TCanvas生成的,我又查了graphics.pas这个文件,
其中有:
TBitmap = class(TGraphic)
........
property Canvas: TCanvas read GetCanvas
而此句的意思是说Canvas是类TBitmap的一个域,
我想问:在Delphi中,只有用类的生构造成的实例后,才可以访问它的域,
那为什么在此例中可以写成:
with canvas do begin
pen.mode:=pmNot
moveto(x0,y0)
lineto(lx,ly)
end
也就是说:这个canvas没有被create就被使用,这是为何?
Canvas与TCanvas之间有什么关系?
谢谢。