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

📄 unit2.pas

📁 这是一个火车站公寓的自动叫班程序源码
💻 PAS
字号:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Mask, DBCtrls, ExtCtrls, DB, DBTables, Common, Buttons;

type
  TfmLogin = class(TForm)
    Panel1: TPanel;
    Image1: TImage;
    Edit1: TEdit;
    Query1: TQuery;
    Button1: TButton;
    ComboBox1: TComboBox;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    procedure Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormShow(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure EnterSystem;
  end;

var
  fmLogin: TfmLogin;

implementation

{$R *.dfm}
Uses Unit1,MyClass;

procedure TfmLogin.EnterSystem;
begin
    if fmMain.tbCaller.Locate('姓名',ComboBox1.Text,[]) //找到用户名
      and(fmMain.tbCaller.FieldByName('密码').AsString=Edit1.Text) then begin
      //密码正确,进入系统
      if(fmMain.tbCaller.FieldByName('类型').AsString='管理员') then
        Caller.LoginType:=ltManager
      else
        Caller.LoginType:=ltUser;
      //Caller.LoginName:=ComboBox1.Text;
      Caller.UserName:=fmMain.tbCaller.FieldByName('姓名').AsString;
      //设置可显示的数据库表
      if(Caller.LoginType=ltManager) then begin
        fmMain.tabCaller.Visible:=true;
        fmMain.tabCaller.TabVisible:=true;
        fmMain.tabRoom.Visible:=true;
        fmMain.tabRoom.TabVisible:=true;
        fmMain.N12.Enabled:=true;   //房间维护
        fmMain.N16.Enabled:=true;   //用户维护
        fmMain.N15.Enabled:=true;   //系统设置
      end
      else begin
        fmMain.tabCaller.Visible:=false;
        fmMain.tabCaller.TabVisible:=false;
        fmMain.tabRoom.Visible:=false;
        fmMain.tabRoom.TabVisible:=false;
        fmMain.N12.Enabled:=false;   //房间维护
        fmMain.N16.Enabled:=false;   //用户维护
        fmMain.N15.Enabled:=false;   //系统设置
      end;
      //进入系统后的初始显示页面
      fmMain.PageControl1.ActivePage:=fmMain.tabPlan;
      fmMain.Button2.Enabled:=true;  //添加
      fmMain.Button3.Enabled:=true;
      fmMain.Button4.Enabled:=true;
      fmMain.Button5.Enabled:=true;
      //添加登录记录
      fmMain.tbLogInOff.First;
      fmMain.tbLogInOff.InsertRecord([Caller.UserName,fmMain.tbCaller.FieldByName('类型').AsString,Now,Now]);
      //限制记录条数不超过1000条
      if(fmMain.tbLogInOff.RecordCount>1000) then begin
        fmMain.tbLogInOff.Last;
        fmMain.tbLogInOff.Delete;
      end;
      SendMessage(Button1.Handle,BM_CLICK,0,0);
    end
    else
      Edit1.Text:='';
    Caller.Logined:=true;
end;

procedure TfmLogin.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if(Key=13) then begin
    EnterSystem;
  end;
end;

procedure TfmLogin.FormShow(Sender: TObject);
var RegistStr,str:string;
begin
  //检查注册信息
  str:=IntToHex(GetVolumeSerialNumber,8);
  if(GetRegistStr<>TransForm(str)) then begin  //注册信息不正确
    ComboBox1.Enabled:=false;
    Edit1.Enabled:=false;
    BitBtn1.Enabled:=false;
    fmLogin.Caption:='系统登陆(未注册)';
  end
  else begin
    ComboBox1.Enabled:=true;
    Edit1.Enabled:=true;
    BitBtn1.Enabled:=true;
    fmLogin.Caption:='系统登陆';
  end;

  //查找用户名
  fmMain.tbCaller.First;
  ComboBox1.Items.Clear;
  while not fmMain.tbCaller.Eof do begin
    ComboBox1.Items.Add(fmMain.tbCaller.FieldByName('姓名').AsString);
    fmMain.tbCaller.Next;
  end;
  ComboBox1.ItemIndex:=0;
end;

procedure TfmLogin.BitBtn1Click(Sender: TObject);
begin
  EnterSystem;
end;

procedure TfmLogin.BitBtn2Click(Sender: TObject);
begin
  //Caller.Suspend;
  //Caller.Destroy;
  Application.Terminate;
end;

procedure TfmLogin.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  if(not Caller.Logined) then
    Application.Terminate;
end;

end.

⌨️ 快捷键说明

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