一个问题(100分)

  • 主题发起人 主题发起人 李联
  • 开始时间 开始时间

李联

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在面临一个问题在开发好一个在程序后,在运行时总是等有点久,我想在这等的时候,有一幅图出现,等我的程序准备好后,这个图自动消失。也就是说一运行时先是一幅图让客户先看到,然后进入正题。请与我联系:leliandelphi@163.net
 
做一个flash窗体,在运行前显示窗体,运行完毕关闭窗体,这其实很简单
 
照 [Delphi]/Demos/Db/Mastapp/mastapp.dpr 抄吧。

begin
SplashForm := TSplashForm.Create(Application);
SplashForm.Show;
SplashForm.Update;
......
SplashForm.Hide;
SplashForm.Free;
Application.Run;
end.
 
很对不起我的问题忘了一句这个问题必须用DELPHI回答,对于上面的回答我有个疑问就是当主程序出来时那个图还能看到,没答到我的要求。我的要求就象delphi一样一运行,首先出现一个DELPHI的画面一进入里面后那个图的没了。请回答者给个例子或把代码写详细一点。
 
[Delphi]/Demos/Db/Mastapp/mastapp.dpr 是很好的例子,
编译运行看看。
 
Croco 贴的程序没问题,能满足你的要求,主程序画面一出现,临时画面就消失了。
你仔细再看看吧。
 
在Croco的方法里,TSplashForm为程序的启动画面。即程序一启动则首先显示
SplashForm,然后就做程序的准备工作,程序完全准备好了,SplashForm就消失。

看这个:

程序启动画面

  在启动程序之前出现启动画面的方法多得是,但有些是调用“记时器”来延时
的,这种方法有时拖慢了程序的启动速度,下面介绍又一方法,给大家参考对比一
下。
  建一个启动封面窗体,假设为Form2,先设置好BorderIcons、BorderStyle、
FormStyle、Position,接着在窗体上加入图片框、文本框,设置好后在菜单里选
Project里的Options,把Form2从Auto-create forms里转到Available forms。再
接着就是按Ctrl+F12键,选Project1,出现工程单元,其内容如下
...
Application.CreateForm(TForm1, Form1);
Application.Run;
..
  在Application.CreateForm(TForm1, Form1); 前加入如下语句:
form2:=tform2.create(application);
form2.Show;
form2.Update;
  然后在Application.Run;前面加入如下语句:
form2.hide;
form2.free;


 
crab is right because croco is right
 
用flash可以的!
 
同意CROCO,这个例子我也看过的,符合你的要求
 
Victortim and Croco are all right!
 
他们的方法好像不对题,我说一种方法:
开始的时候加一个TTimer控件,假设把时间间隔设为5秒;
刚开始的时候窗体的控件的visible属性全设为False;也就是说用看不到这些控件.
只能看到visible为True的image控件,当五秒钟过后,那些控件的visible再设为
True,把TTimer的enable设为False就行了,你试试看吧
 
同意Victortim and Croco的方法,
陈君凯的方法耗资源。
 
怎么耗资源了?
 
to 李联:
delphi的启动画面就是一个flash,
so croco是对的,也是最方便的,
<<delphi5培训教材>>上有这个例子.
 
to 陈君凯:
你的这个窗口运行的时间:程序初始化的时间+你设定的时间>5秒。
而Victortim and Croco窗口运行的时间:程序初始化的时间,具体时间看程序初始
化代码量定,也可能此窗口一闪而过,所以建议在生成主窗体时判断一下:程序启动到主程序打开时间延时是否大于或等于4秒,如果少于4秒,则继续延时,如果大于4秒
则由系统自动处理,关闭Splash吧!
 
同意Victortim and Croco的方法.
 
在这边我首先感谢各位对我提的问题大力支持别象Victortim 和 Croco,它们的答案是正确的但这边我在CROCO的方法在提一点我最后用的方法当然和CROCO一样的,首先要两个窗体第一个窗体出现自已想出现的画面在第二个窗体的Tform1.formshow函数中加入form2.hide;form2.free;这两面句。
 
后退
顶部