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

📄 login.pas

📁 路灯控制 可以实现路灯远程开关等
💻 PAS
字号:
unit Login;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ADODB, StdCtrls, ExtCtrls, SkinCaption, WinSkinData;

type
  TFrm_Login = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Bevel1: TBevel;
    Edit1: TEdit;
    Edit2: TEdit;
    Button1: TButton;
    Button2: TButton;
    ADOQuery1: TADOQuery;
    SkinData1: TSkinData;
    SkinCaption1: TSkinCaption;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure Edit2KeyPress(Sender: TObject; var Key: Char);
  private
   num:integer;
   function password(Str:string):string;
    { Private declarations }
  public
     sucess:boolean;
     quanxian:string;
    { Public declarations }
  end;

var
  Frm_Login: TFrm_Login;

implementation

uses main, DM;

Function Tfrm_login.password(Str:String):string;
var
 s:string;
 i,len,m,sum:integer;
begin
 sum:=1314;
 len:=length(str);
 for i:=1 to len do
 begin
 s:=copy(str,i,1);
 m:=strtoint(s);
 sum:=m xor sum;
 end;
 result:=inttohex(sum,8);
end;

{$R *.dfm}

procedure TFrm_Login.FormCreate(Sender: TObject);
begin
  sucess:=false;
  num:=0;
end;

procedure TFrm_Login.Button1Click(Sender: TObject);
var

  Dh,Mm:String;
  Count:Integer;
  connstr:string;
  Str,pass:string;
begin
  Dh:=Trim(Edit1.Text);
  Mm:=Trim(Edit2.Text);
  Str:='1224';
  pass:=password(str);
  Connstr:='Provider=Microsoft.Jet.OLEDB.4.0;'+
                           'Data Source='+ExtractFilePath(Application.ExeName)+'\date\db1.mdb;'+
                           'Persist Security Info=False;'+
                           'Jet OLEDB:Database Password="'+pass+'"';//   加入密码
  adoquery1.ConnectionString:=connstr;

  with ADOQuery1 do
   begin
   Close;
   SQL.Clear;
   sql.add('select * from 用户 where 用户代号=:a and 用户密码=:b');
   parameters.ParamByName('a').Value:=Trim(Edit1.Text);
   parameters.ParamByName('b').Value:=Trim(Edit2.Text);
  // SQL.Add('Select * From 用户 Where 用户代号="'+Trim(Edit1.Text)+'" and 用户密码="'+Trim(Edit2.Text)+'"');
   Open;
   end;
   Count:=adoquery1.RecordCount;
  if Count>0 then
    begin
     // Sucess:=True;
     // self.close;
  quanxian:=ADOQuery1.fieldbyname('用户权限').AsString;


  Frm_main:=TFrm_main.Create(Application);
  Frm_main.Update;
  Frm_main.ShowModal;
  frm_login.Free;



    end
  else if Count<=0 then
    begin
      Num:=Num+1;
      MessageBox(Handle,'用户名或密码错误,登陆失败!','错误',MB_OK+MB_ICONERROR);
      if Num>=5 then
        begin
          MessageBox(Handle,'多次登陆失败,程序自动退出!','错误',MB_OK+MB_ICONSTOP);
          Close;
        end;
    end;


end;

procedure TFrm_Login.Button2Click(Sender: TObject);
begin
close;
end;

procedure TFrm_Login.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
edit2.SetFocus;
end;

procedure TFrm_Login.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
button1.SetFocus;
end;

end.

⌨️ 快捷键说明

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