在登陆界面上进入后出现欢迎界面,5秒后自动进入主界面。
我在欢迎界面上放了一个timer控件,在timer事件中代码
procedure Thy_Form.Timer1Timer(Sender: TObject);
var i:integer;
begin
i:=timer1.Interval;
if i=5000 then zjm_form.Show; //主界面
hy_form.Hide; //欢迎界面
end;
我在欢迎界面上放了一个timer控件,在timer事件中代码
procedure Thy_Form.Timer1Timer(Sender: TObject);
var i:integer;
begin
i:=timer1.Interval;
if i=5000 then zjm_form.Show; //主界面
hy_form.Hide; //欢迎界面
end;
解决方案 »
- 菜鸟求救,不在同一个局域网内的两台机器,pc-1(adsl-1)想访问pc-2(adsl-2)的sql-server,应如何实现?不胜感激~~~~~~~~~
- 散分,这几天鼻炎好多了!
- FastReport运行Demo时出现错误!
- 无线开发网站资源
- delphi中调用dll写数据库,出问题了!
- ADO连接ORCLE(Oracle Provider for OLE DB)出现“invalid variant operation"错误
- 哪位大虾有关于DELPHI7的下载?
- 一个很纳闷的关于adotable的问题
- 谁是delphi的高手,救救我
- 高人请进-------------这个FastReport的表达式,到底哪里错了?
- delphi中编程操作Alter语句
- 我跟小数位对上了,,,,,,,,,,,,,
对于timer控件,不需要判断interval的值,只要在timer控件的事件中加入当计时到后触发的时间就可以了。
procedure Thy_Form.Timer1Timer(Sender: TObject);
begin
zjm_form.Show; //主界面
hy_form.Hide; //欢迎界面
end;
在程序设计是,将interval设置成5000,然后开始计时时,将timer控件的
enable属性设置为true就可以了。
Application.Title:='ShopFloor Information System';
WelcomeInfo_Frm:=TWelcomeInfo_Frm.Create(Application);
WelcomeInfo_Frm.Show;
WelcomeInfo_Frm.Update;
LoginInfo_Frm:=TLoginInfo_Frm.Create(Application);
Sleep(1200);
WelcomeInfo_Frm.Free;
WelcomeInfo_Frm:=nil;
LoginInfo_Frm.Free;
LoginInfo_Frm:=nil;
Application.CreateForm(TMainInfo_Frm,MainInfo_Frm);
Application.Run;
Jethill(生儿子之前,老婆说她喜欢女儿!) 我按你的要求设置了属性,还是有错误,在登录界面上刚输入用户名就直接进入主界面。
zhao_yong(Learn) 的代码看不懂哇。
登录界面代码var maxtimes,logintimes:integer;
procedure Tdl_Form.cmdokClick(Sender: TObject); //确定按钮
var aname,apass,sqlstr:string;
begin
inc(logintimes);
if logintimes>maxtimes then
begin
showmessage('你已经超出允许验证次数,将退出登录系统!');
application.Terminate;
end
else
begin
if(length(trim(user_edit.Text))>0)or(length(trim(pass_edit.Text))>0) then
begin
aname:=trim(user_edit.Text);
apass:=trim(pass_edit.Text);
sqlstr:='select*from username where(username='''+aname+''')and(password='''+apass+''')';
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(sqlstr);
ADOQuery1.Open;
if ADOQuery1.RecordCount>0 then
begin
hy_form.show;
dl_form.hide;
end
else
begin
showmessage('请确认登录的用户名和密码是否正确!');
user_edit.SetFocus;
user_edit.SelectAll;
end;
end
else
begin
showmessage('请输入登录用户名和密码!');
user_edit.SelectAll;
end
end
end;procedure Tdl_Form.FormCreate(Sender: TObject);
begin
maxtimes:=3;
logintimes:=0;
end;procedure Tdl_Form.cmdcloseClick(Sender: TObject);
begin close;
end;procedure Tdl_Form.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if messagedlg('你选择了系统退出,退出将不能启动管理系统,是否真的退出?',mtconfirmation,[mbYes,mbNo],0)=mrYes then
ACTION:=caFree
else
ACTION:=caNone;
end;procedure Tdl_Form.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
key:=#0;
perform(wm_nextdlgctl,0,0);
end;
end;
欢迎界面代码procedure Thy_Form.Timer1Timer(Sender: TObject);
begin
zjm_form.Show;
hy_form.Hide;
end;主界面代码
procedure Tzjm_Form.N5Click(Sender: TObject);
begin
close;
end;procedure Tzjm_Form.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if messagedlg('你选择了系统退出,退出将不能启动管理系统,是否真的退出?',mtconfirmation,[mbYes,mbNo],0)=mrYes then
ACTION:=caFree
else
ACTION:=caNone;
end;
然后欢迎界面代码为
procedure Thy_Form.Timer1Timer(Sender: TObject);
begin
timer1.Enabled:=true;
zjm_form.Show;
hy_form.Hide;
timer1.Enabled :=false;
end;
这样只能到达欢迎界面,不能在5秒后进入主界面
var i:integer;
procedure Thy_Form.Timer1Timer(Sender: TObject);
begin
i:=i+1;
if i=3
then
begin
zjm_form.Show;
hy_form.Hide;
end
end;procedure Thy_Form.FormActivate(Sender: TObject);
begin
timer1.Enabled:=true;
i:=0;
end;
Application.Initialize;
if Application.Terminated then
Exit; startfrm := Tstartfrm.Create(Application);
startfrm.Show;
startfrm.Update;
Application.CreateForm(TMain, Main);
Login:=TLogin.Create(Application);
Login.FSQLConnection:=DM_Mid.SQLConnection1;
startfrm.Hide;
startfrm.Free; if login.ShowModal = mrOK then
begin
Application.CreateForm(TSalCKRoomShow, SalCKRoomShow);
Application.Run; end
然后在再欢迎界面上的timer事件中写个close关闭就可以了 把时间控制到5秒