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

📄 enter_form.pas

📁 delphi+sql2000实现的图书管理系统软件
💻 PAS
字号:
unit Enter_Form;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, XPMenu, StdCtrls,DB,ADODB;

type
  TEnter_F = class(TForm)
    XM_CB: TComboBox;
    MM_E: TEdit;
    Label2: TLabel;
    Label1: TLabel;
    Exit_Btn: TButton;
    Enter_Btn: TButton;
    XPMenu1: TXPMenu;
    procedure FormCreate(Sender: TObject);
    procedure Enter_BtnClick(Sender: TObject);
    procedure MM_EKeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Exit_BtnClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Enter_F: TEnter_F;

implementation

uses Share_Unit, Main_Form;

{$R *.dfm}

var
  Logintimes:integer=0;

procedure TEnter_F.FormCreate(Sender: TObject);
var
   DLYH_Q:TADOQuery;
   ADOCommand:TADOCommand;
   s,DataPath : string;
begin
   Connect:=TADOConnection.Create(nil);
   //Connect.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=.\Data.mdb;Persist Security Info=False';
   Connect.ConnectionString:='Provider=SQLOLEDB;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Book_Data';
   Connect.LoginPrompt:=false;
   try
     Connect.Connected:=true;
   except
     ADOCommand:=TADOCommand.Create(nil);
     ADOCommand.ConnectionString:='Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False';
     DataPath:=ExtractFilePath(Application.ExeName) ;
     s:='EXEC sp_attach_db @dbname = N'+char(39)+'Book_Data'+char(39)+','+
        '@filename1 = N'+char(39)+DataPath+'Book_Data.MDF'+char(39)+
          ','+'@filename2 = N'+char(39)+DataPath+'Book_Data.LDF'+char(39);
     ADOCommand.CommandText := s;
     ADOCommand.Execute();
   end;

   DLYH_Q:=TADOQuery.Create(nil);
   DLYH_Q.Connection:=Connect;
   DLYH_Q.SQL.Clear;
   DLYH_Q.SQL.Add('select 姓名 from 登录用户');
   DLYH_Q.Open;
   if DLYH_Q.RecordCount >0 then
      while not DLYH_Q.Eof do
        begin
         XM_CB.Items.Add(DLYH_Q.FieldValues['姓名']);
         DLYH_Q.Next;
        end;
   DLYH_Q.Close;
   FreeAndNil(DLYH_Q);
   XM_CB.ItemIndex:=0;
end;
//******************************************************************************
procedure TEnter_F.Enter_BtnClick(Sender: TObject);
var
   DLYH_Q:TADOQuery;
   Password:String;
begin
   DLYH_Q:=TADOQuery.Create(nil);
   DLYH_Q.Connection:=Connect;
   DLYH_Q.SQL.Clear;
   DLYH_Q.SQL.Add('select 密码,权限 from 登录用户');
   DLYH_Q.SQL.Add('where 姓名=:姓名');
   DLYH_Q.Parameters.ParamByName('姓名').Value:=XM_CB.Text;
   DLYH_Q.Open;
   if DLYH_Q.RecordCount > 0 then
     begin
        Password:=DLYH_Q.FieldValues['密码'];
        if MM_E.Text=Password then
          begin
             UserName:=XM_CB.Text;
             self.Hide;
             QX:=DLYH_Q.FieldValues['权限'];
             with TMain_F.Create(nil) do
               try
                  ShowModal;
               finally
                  free;
               end;
          end
        else
          begin
            Logintimes:=Logintimes+1;
            if Logintimes < 3 then
              begin
                MessageBox(handle,pchar('密码第'+IntToStr(Logintimes)+'次错误,请重新输入!'),'密码错误',MB_OK OR MB_ICONERROR);
                MM_E.Text:='';
                MM_E.SetFocus;
              end
            else
              begin
                MessageBox(handle,'密码三次错误请关闭!','密码错误', MB_ICONERROR);
                application.Terminate;
              end;
          end;
      end;
   DLYH_Q.Close;
   FreeAndNil(DLYH_Q);
end;
//******************************************************************************
procedure TEnter_F.MM_EKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=VK_RETURN then Enter_BtnClick(Enter_Btn);
end;
//******************************************************************************
procedure TEnter_F.Exit_BtnClick(Sender: TObject);
begin
   close;
end;
//******************************************************************************
end.

⌨️ 快捷键说明

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