Form的创建问题
我知道可以通过 Application.CreateForm(TForm1, Form1); 来创建Form, 也可以载程序运行过程中动态创建 Form1 := TForm1.Create(self). 这两种方式创建的Form有区别吗? 顺便想问问,Application应该是TApplication的对象吧,在那里定义的呢? 程序中看不到.谢谢那位大哥给我讲讲. 问题点数:50、回复次数:8Top
1 楼DDGG(叮叮当当)回复于 2005-04-02 17:22:04 得分 25
两种方式建立的唯一区别是:
第一种方式建立的窗体,由Application负责释放。
第二种方式建立的窗体,必须自己负责释放,在Create时指定参数的话,则由指定的Owner负责释放。
没错,Application是TApplication类的实例,也就是对象。它定义在Forms.pas里第1198行(Delphi6),你按住Ctrl键点击代码里的Application字样,就可以跳转到它定义的位置了。只要引用了Forms单元,你就可以在程序里使用这个已经定义好的Application对象。Top
2 楼zhxfzhxf1(zhxfzhxf1)回复于 2005-04-02 17:31:59 得分 5
agree with DDGG(叮叮当当)Top
3 楼chwdong(chwdong)回复于 2005-04-02 18:18:31 得分 5
很具体了,就是这样!Top
4 楼wafeijian(韵杰〖痛并快乐着……〗)回复于 2005-04-02 19:08:09 得分 0
同意!Top
5 楼sunshinell(猪会爬の树)回复于 2005-04-02 19:26:08 得分 0
以上Top
6 楼xiaoyaozgc()回复于 2005-04-02 19:38:07 得分 0
agree with DDGG(叮叮当当)
Top
7 楼CareYouOnly(只在乎你)回复于 2005-04-03 01:45:54 得分 15
补充一点:第一个调用Application.CreateForm(TForm1, Form1); 创建的窗体会成为主窗体。Top
8 楼shove(shove)回复于 2005-04-03 01:48:49 得分 0
完全正确Top




