主题:如何在打开程序前增加一个登陆控制
zhangsuts
[专家分:30] 发布于 2006-11-05 09:24:00
我用DELPHI写了一个小程序,程序已经写完好,但这个程序打开就能用,我想增加一个用户登陆界面,如果没有用户登陆权限就不可以使用这个程序,请大虾会帮帮忙说 一下应该如处理,请详细说一下,最好加一个实例谢谢。如有会的可以加我的QQ:46706727
回复列表 (共2个回复)
沙发
wangchj [专家分:0] 发布于 2006-11-07 13:21:00
unit logon;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls,db, DBTables;
type
Tlogonform = class(TForm)
Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
BitBtn1: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
logonform: Tlogonform;
i:integer;
implementation
uses main;
{$R *.dfm}
procedure Tlogonform.BitBtn1Click(Sender: TObject);
var
table1:TTable;
begin
table1:=TTable.Create(self);
Table1.DatabaseName:='xxgl';
Table1.TableName:='operator.db';
Table1.Open;
Table1.SetKey;
table1.FieldByName('name').asstring:=trim(edit1.text);
//验证用户名和密码的正确性
if (Table1.GoTokey) and (Table1.FieldByName('password').AsString=edit2.text) then
//验证成功
begin
username:=edit1.text;
password:=edit2.text;
right:=Table1.fieldByName('right').asstring;
Table1.Close;
close;
end
else
//验证失败
begin
Table1.Close;
Application.MessageBox('用户名或密码输入错误,请检查再重试!','系统提醒',mb_ok);
edit1.text:='';
edit2.Text:='';
edit1.SetFocus;
i:=i-1;
// 错误输入次数已达3次,系统给予提示并自动关闭
if i=0 then
begin
messagedlg('错误输入次数已达3次,系统将会自动关闭!',mtwarning,[mbok],0);
application.Terminate;
end;
end
end;
end
板凳
lanjping [专家分:270] 发布于 2006-11-09 08:41:00
新添加个窗体,在Project1中的Application.Initialize后面加入;
form2:=Tform2.Create(Application);
form2.ShowModal;
form2.Free;
你可以在form2中写入你想要的内容
我来回复