请帮忙--毕业设计中遇到的问题(3)(50分)

  • 主题发起人 主题发起人 无影
  • 开始时间 开始时间

无影

Unregistered / Unconfirmed
GUEST, unregistred user!
有时SHOWMODAL一个窗体时,先创建一个类:Form1:=TForm1.Create(Self);
Form1.ShowModal;而有些不需要,请问什么原因?
BY THE WAY
Create(Self);
Create(Application);
Create(Owner);
有何区别?
 
设计时可以让他先生成就不用create
self是窗体
application是程序
owner是所有者
 
呵呵,问题真不少。
创建不创建,关键看你把它放在哪里了,缺省是在 project option 中
auto create 部分, 这时就不要 手动 create,
放在 available 就要手动 create.
 
两位大侠已说全了
 
我和monster同感
 
迟了,迟了
 
Form1:=TForm1.Create(Self)的时候往往是要调用
多个属性或功能差不多,或完全相同的FROM,这时,可
用这种方法!
 
Self 和 Owner 是OOP的概念。
Self指对象自己;如:
procedure TForm.OnClick....
begin
Self.ReAlign; //Self 就是Form1
end;

procedure TStrings.IndexOf(....
begin
Self. //Self 就是 申明为类型TStrings的那个变量;
end;


Owner指对象的所有者,不是Parent(上级窗口),也不是父类.
在Delphi中,Owner主要用来建立对象之间的连接关系;当Owner被Free时
所有Owner下面的对象都被Free.

Application 就是应用程序自己.
 
来晚了。
 
SuperMMX说全了。
 
我在说几句
比如
type
constructor create(AOwner:Tcomponet); override;
...
implementation
constructor create(AOwner:Tcomponet);
begin
inherited create(Aowner);
...
这是创建派生组件时候用的,请问Aowner 和owner什么关系?
无影兄,请给我一分。。呵呵

 
接受答案了.
 
后退
顶部