⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 login.pas

📁 运动会管理系统是一个小型的具有查询运动员信息详细的比赛项目等功能的管理系统
💻 PAS
字号:
unit Login;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, jpeg, ExtCtrls, Buttons;

type
  TfrmLogin = class(TForm)
    Image1: TImage;
    Label1: TLabel;
    edtUserId: TEdit;
    edtPassword: TEdit;
    bbtnOK: TBitBtn;
    bbtnCancle: TBitBtn;
    Label2: TLabel;
    procedure bbtnOKClick(Sender: TObject);
    procedure bbtnCancleClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmLogin: TfrmLogin;
function gfunOpenLogin(var sUserID :string; nStatus :integer) :integer;
implementation
uses DataModual,SportMain;
var
  usUserID :string;   //接收用户标识
  unStatus :integer;  //与nStatus含义一样
  unTimes  :integer;  // 计算用户登录次数
{$R *.dfm}
//登录表单提供出来的接口函数
function gfunOpenLogin(var sUserID :string; nStatus :integer) :integer;
begin
   frmLogin :=TfrmLogin.Create(nil);    //动态创建登录表单对象
   unStatus :=nStatus;                  //将调用者参数送入unStatus变量中
   unTimes  :=1;                        //初始登录数字设为1
   frmLogin.ShowModal;                  //显示登录界面
   sUserID :=usUserID;                  //将登录界面的用户标识返回给调用者
   Result :=0;                          //函数返回0值
   frmLogin.Free;                       //释放登录表单对象
end;
procedure TfrmLogin.bbtnOKClick(Sender: TObject);
var
   sPassword :string;
   sConn :string;
begin
   sPassword :=trim(edtPassword.Text);
   usUserID :=trim(edtUserID.Text);
   if usUserID = '' then
   begin
     application.MessageBox('没有输入用户标识','提示',mb_ok) ;
      edtUserID.SetFocus ;
      exit;
   end;
   sConn := 'Provider=OraOLEDB.Oracle.1;Password='+sPassword+
       '; Persist Security Info=True;User ID='+usUserID+';Data Source=demo';
   if DataModule1.connOracle.Connected then
      DataModule1.connOracle.Close;
   DataModule1.connOracle.ConnectionString := sConn;
   DataModule1.connOracle.LoginPrompt := False;
   try
      DataModule1.connOracle.Open;          //建立数据库的连接
      close;                                //关闭登录界面
      SportMain.frmSportMain.Show ;   //显示主界面
   except
      application.MessageBox('输入用户标识或口令有错','提示',mb_ok);
      unTimes := unTimes+1;
      if unTimes >3 then
      begin
        application.MessageBox('您已经试图登录三次不成功,退出系统','提示',mb_ok);
        application.Terminate ;
      end
      else
        edtUserID.SetFocus ;
   end;
end;

//取消登录系统
procedure TfrmLogin.bbtnCancleClick(Sender: TObject);
begin
   if unStatus = 0 then    //初次取消退出整个应用程序
   begin
     if DataModule1.connOracle.Connected then
        DataModule1.connOracle.Close;
     application.Terminate ;
   end
   else                  //重新登录后取消本次登录
     close;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -