Delphi的application的一点问题(50分)

  • 主题发起人 主题发起人 sssing
  • 开始时间 开始时间
S

sssing

Unregistered / Unconfirmed
GUEST, unregistred user!
例如:
application.Initialize //用初始化一个应用程序
application.CreateForm //用来在创建下个窗体
application.Run //用来执行程序呀

这是我在网上找到的一点资料,但是我不知道怎么用.
就好像Initialize,初始化了什么?我通过按钮加上代码,没反应,run和create又是干什么的,能举一个例子吗?他们的具体作用,谢谢!
 
这些过程在用 Delphi 创建工程文件时自动添加到工程文件里,打开 .dpr 文件就可以看到了,初学者没有必要去手工调用。
 
嗯 想要了解一些 参见我发的这贴
http://www.delphibbs.com/delphibbs/dispq.asp?lid=3897708
希望对你有所帮助
 
建议看《Insid深入核心 VCL架构分析》,李维写的。
在第四章《VCL Framework和窗口消息》中写得很清楚。。。。
先看看全局的Application对象是在什么地方创建的,每一个Delphi的Windows应用程序在主程序中都会引用Forms程序单元,Forms单元会引用Controls程序单元。在Controls程序单元被加载时它的initialization程序区块会被自动执行,而在initialization程序区块我们可以看到它调用了InitControls函数:
initialization
NewStyleControls := Lo(GetVersion) >= 4;
InitControls;
......
在InitControls函数中我们就可以找到全局对象变量Application被创建的程序代码:
procedure InitControls;
var
UserHandle: HMODULE;
begin
......
Screen := TScreen.Create(nil);
Application := TApplication.Create(nil);
....
end;
由此可知当Delphi的Windows应用程序的执行代码加载之后,当执行权一旦进行主程序中,那么Application就已经被创建并且开始提供服务了。在Delphi中,Application对像功能就像它的名称暗示一样,它代表一个执行时期的Delphi应用程序,而这个由Application代表的Delphi应用程序将会设定和引导执行权进入窗口的世界。
//剩下的自己看吧,打字也很累喔。。。
 
application.Initialize //用初始化一个应用程序
对应每个单元(unit)中的initialization后的代码
application.CreateForm //用来在创建下个窗体
用这个函数创建的窗体就是自动创建,默认情况下建立的窗体就是自动创建,这里的自动创建指运行期。
application.Run //用来执行程序呀
这个很简单,就是运行你的程序,并处理发送到程序的消息。
 
后退
顶部