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

📄 ulogin.~pa

📁 家庭财账管理软件.zip 毕业设计 论文加代码
💻 ~PA
字号:
unit ulogin;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons, Db, Halcn6DB, Tools;

type
  TfrmLogin = class(TForm)
	 GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    txtXDYName: TEdit;
    txtPwd: TEdit;
    btnLogin: TBitBtn;
    btnVerifyPwd: TBitBtn;
    btnExit: TBitBtn;
    btnChangePWD: TBitBtn;
    grpChangePWD: TGroupBox;
	 Label6: TLabel;
    Label7: TLabel;
	 txtNewPWD: TEdit;
    txtConfirmPWD: TEdit;
    tablePWD: THalcyonDataSet;
    tablePWDXDYNAME: TStringField;
    tablePWDPASSWORD: TStringField;
    tablePWDLDATE: TDateField;
    tablePWDCDATE: TDateField;
	 tablePWDMARK: TStringField;
    Label3: TLabel;
    txtNewUser: TEdit;
    procedure txtXDYNameKeyPress(Sender: TObject; var Key: Char);
    procedure txtPwdKeyPress(Sender: TObject; var Key: Char);
    procedure btnVerifyPwdClick(Sender: TObject);
    procedure btnLoginClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure btnExitClick(Sender: TObject);
    procedure btnChangePWDClick(Sender: TObject);
	 procedure txtNewPWDKeyPress(Sender: TObject; var Key: Char);
	 procedure txtConfirmPWDKeyPress(Sender: TObject; var Key: Char);
    procedure txtNewUserKeyPress(Sender: TObject; var Key: Char);
  private
	 { Private declarations }
  public
	 { Public declarations }
  end;

var
  frmLogin: TfrmLogin;

implementation

uses main,YYtools;

{$R *.DFM}

//1999.8.25.

procedure TfrmLogin.txtXDYNameKeyPress(Sender: TObject; var Key: Char);
begin
  if key = #13 then
    begin
      txtPwd.setfocus;
    end;

end;

//1999.8.25.

procedure TfrmLogin.txtPwdKeyPress(Sender: TObject; var Key: Char);
begin
  if key = #13 then
    begin
      btnVerifyPwd.setfocus;
    end;
end;


//密码验证
//1999.8.25. 8.26.  8.27.  11.15.
procedure TfrmLogin.btnVerifyPwdClick(Sender: TObject);
var
  s, p: string;
begin
  s := txtXDYName.text;
  p := txtPWD.text;

  ysDeCrypt(GetAppPath+'pwd.ebf',GetAppPath+'pwd.dbf');	  
  
  with tablePwd do begin
		Open;
		First;
		while not EOF do begin
			 //判断用户名 相等
			 if tablePwdXDYNAME.value = s then
				begin
				  if p = tablePwdPassword.value then
					 begin
						btnLogin.Enabled := true;
						btnChangePWD.Enabled := true;
						tablePwd.Edit;
						tablePwdLDate.value := Now;
						tablePwd.Post;
						  btnLogin.SetFocus;

						
					 end
				  else
					 begin
						ShowMessage('Wrong Password.');
					 end;
				  close;
				  
				  ysEncrypt(GetAppPath+'pwd.dbf',GetAppPath+'pwd.ebf');
				  exit;
				end;
			 Next;
		  end;
		Close;
	 end;
	 

	
	 
end;

procedure TfrmLogin.btnLoginClick(Sender: TObject);
begin
  hide;
  frmMain.showmodal;
end;

procedure TfrmLogin.FormCreate(Sender: TObject);
begin
  tablePWd.DatabaseName := GetApppath;
end;

procedure TfrmLogin.btnExitClick(Sender: TObject);
begin
  close;
end;

//修改密码
//1999.8.27. 11.15.

procedure TfrmLogin.btnChangePWDClick(Sender: TObject);
begin
  Application.MessageBox('请在"新密码"处输入您新的密码.', '修改密码', MB_OK + MB_ICONASTERISK + MB_DEFBUTTON1 + MB_APPLMODAL);
  grpChangePWD.enabled := true;
  txtnewUser.text:=txtXDYName.text;
  txtNewUser.setfocus;
end;

//输入新密码
//1999.8.27.

procedure TfrmLogin.txtNewPWDKeyPress(Sender: TObject; var Key: Char);
begin
  if key = #13 then begin
		txtConfirmPWD.SetFocus;
    end;
end;

//密码确认
//1999.8.27.

procedure TfrmLogin.txtConfirmPWDKeyPress(Sender: TObject; var Key: Char);
var
  s1, s2: string;
begin
  if key = #13 then begin
      s1 := txtNewPWD.text;
      s2 := txtConfirmPWD.text;
      if s1 <> s2 then begin
          Application.MessageBox('您两次输入的密码不匹配,请重新输入.', '修改密码', MB_OK + MB_ICONASTERISK + MB_DEFBUTTON1 + MB_APPLMODAL);
          txtNewPWD.setfocus;
          exit;
        end;

		ysDeCrypt(GetAppPath+'pwd.ebf',GetAppPath+'pwd.dbf');
		  
		with tablePwd do
        begin
          Open;
			 First;
			 while not EOF do
				begin
				  //判断用户名 相等
				  if tablePwdXDYName.value = txtXDYName.text then
					 begin
						Edit;
						tablePWDXDYName.value:=txtNewUser.text;
						tablePWDPassword.value := s2;
						Post;
						Close;
						Application.MessageBox('密码修改完成.', '修改密码', MB_OK + MB_ICONASTERISK + MB_DEFBUTTON1 + MB_APPLMODAL);
						ysEncrypt(GetAppPath+'pwd.dbf',GetAppPath+'pwd.ebf');
						exit;
					 end; //if end
				  next;
				end; //while end
			 close;
		  end; //with end
	 end; //if end

end;

procedure TfrmLogin.txtNewUserKeyPress(Sender: TObject; var Key: Char);
begin
	if key = #13 then begin
		txtNewPWD.SetFocus;
	 end;
end;

end.

⌨️ 快捷键说明

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