怎么做个启动界面????(20分)

Y

ytwin

Unregistered / Unconfirmed
GUEST, unregistred user!
大虾们好,在下又要麻烦你们了:)
我想做个启动界面,象delphi装载时出现的启动界面一样。
在下虚心求教!!
 
在工程文件的
Application.Initialize;
后面创建您的启动画面也可以在
单元的Initialization部分创建
 
begin
Application.Initialize;
with TConverForm.Create(nil) do begin
show;
Application.ProcessMessages;
Application.CreateForm(TMainForm, MainForm);
Application.CreateForm(TDm, Dm);
Application.CreateForm(TSetupForm, SetupForm);
Application.CreateForm(TLoginForm, LoginForm);
close;
end;
MainForm.Login.Click;
Application.Run;
end
 
在工程文件的
begin
Application.Initialize;

frm_login := TFrm_login.create(nil);

Application.CreateForm(TForm1, Form1);

frm_login.ShowModal;
frm_login.free;

Application.Run;
end.
注意将frm_login设置成无边框;
 
新建一个Form,在Project Operations 中把它从Auto-create forms移动到 Available forms,
修改在工程文件如下:
begin
Application.Initialize;
Formlog:= TFrm_login.create(TFormLog,FormLog);
Application.CreateForm(TForm1, Form1);
Formlog.ShowModal;
Formlog.free;
Application.Run;
end.

 
有点错了,更改--
修改在工程文件如下:
begin
Application.Initialize;
Application.create(TFormLog,FormLog);
Formlog.ShowModal;
Application.CreateForm(TForm1, Form1);
Formlog.free;
Application.Run;
end.
 
补充:界面可在FormLog中设置。
 
我是在登陆窗体Create是先出现启动界面的
procedure Twin_yhdl.FormCreate(Sender: TObject);
begin//win_yhdl是登陆窗体,就是用户验证用户合法窗体
win_show:=twin_show.Create(self);//win_show是启动界面单元
win_show.show;
win_show.Update;
getsystemtime(currtime);
sec:=currtime.wSecond+3;//3秒后启动界面释放
while sec>currtime.wSecond do
getsystemtime(currtime);
win_show.Free;
end;
 
我给一段程序给你,是在你的工程文件里改的。

program PPMIS;

uses
Forms,
Windows,
SysUtils,
About in 'About.pas' {AboutBox},
fm in 'fm.pas' {Form1},
GetCPUID in 'GetCPUID.pas' {Form16},
login in 'login.pas' {Form13},
main in 'main.pas' {Form2},
Option in 'Option.pas' {Form14},
reg in 'reg.pas' {Form10},
reg1 in 'reg1.pas' {Form15};

{$R *.RES}
Var
hMutex:HWND;
Ret:Integer;

begin
Application.Initialize;
//设置日期格式
DateSeparator := '-';
ShortDateFormat:='yyyy-mm-dd';

form1:=Tform1.Create(form1);
form1.show;
form1.Update;
Application.Title := '《计划生育管理系统》';
hMutex:=CreateMutex(nil,False,'《计划生育管理系统》');
Ret:=GetLastError;
If Ret<>ERROR_ALREADY_EXISTS Then
Begin
Application.CreateForm(TForm13, Form13);
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TAboutBox, AboutBox);
Application.CreateForm(TForm16, Form16);
Application.CreateForm(TForm14, Form14);
Application.CreateForm(TForm10, Form10);
Application.CreateForm(TForm15, Form15);
form1.Hide;
form1.Free;
Application.Run;
End
Else
begin
Application.MessageBox('《计划生育管理系统》正在运行中!','信息!',MB_OK);
end;
ReleaseMutex(hMutex);
end.
 
大家太热情了,我就不说了。
这种精神值得提倡的
 
快结束吧。
 
在工程中写
 
都一大串代码的,还真清楚了!
 
sanming兄弟:
ShowModal的话不可以吧?
 
呵呵,人气真是旺!
 
在你的主窗口中的uses 中加入unit2;
主窗口的activate事件中写入下面代吗
form_move.showmodal;
在form_move中,加入一个time控件,在ontime事件中写入close
设置time1的属性,时间为3000。
 
Formlog.ShowModal;不行,只能show
 

Similar threads

顶部