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

📄 editpass.pas

📁 可对供应商,顾客,商品,信息进行添加修改查询删除.可随时统计进货量和销售量,同时统计销售额和利润等.
💻 PAS
字号:
unit EditPass;

interface

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

type
  TEditPasswordFrm = class(TForm)
    UserName_Label: TLabel;
    OldPassword_Label: TLabel;
    NewPassword_Label: TLabel;
    SubmitPassword_Label: TLabel;
    OldPassword_Edit: TEdit;
    NewPassword_Edit: TEdit;
    SubmitPassword_Edit: TEdit;
    UserName_ComboBox: TComboBox;
    EditPassword_Table: TTable;
    EditPassword_Query: TQuery;
    EditPasswordOk_BitBtn: TBitBtn;
    EditPasswordCancel_BitBtn: TBitBtn;
    procedure EditPasswordCancel_BitBtnClick(Sender: TObject);
    procedure EditPasswordOk_BitBtnClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  EditPasswordFrm: TEditPasswordFrm;
  function editpassword(password:string):string;
  function getpassword(password:string):string;

implementation

{$R *.dfm}


//-------定义函数:修改密码(编码)------
function editpassword(password:string):string;
var i,passwordlength:integer;
    temppassword:string;
begin
   passwordlength:=length(password);
   temppassword:='';
   for i:=passwordlength downto 1 do
       begin
          temppassword:=temppassword+copy(password,i,1);
       end;
   editpassword:=temppassword;
end;

//-------定义函数:从数据库获取密码(译码)------
function getpassword(password:string):string;
var i,passwordlength:integer;
    temppassword:string;
begin
   passwordlength:=length(password);
   temppassword:='';
   for i:=passwordlength downto 1 do
       begin
          temppassword:=temppassword+copy(password,i,1);
       end;
   getpassword:=temppassword;
end;


procedure TEditPasswordFrm.EditPasswordCancel_BitBtnClick(Sender: TObject);
begin
  EditPasswordFrm.hide;
end;

procedure TEditPasswordFrm.EditPasswordOk_BitBtnClick(Sender: TObject);
var querystring,password,loginpassword:string;
begin
    querystring:='select * from login where username='+''''+UserName_ComboBox.text+'''';
    with EditPassword_query do
      begin
       //-------获取旧密码------
       sql.clear;
       sql.add(querystring);
       open;
       password:=Getpassword(fieldbyname('password').asstring);
       close;
      end;
    loginpassword:=OldPassword_Edit.text;
    if loginpassword=password then
      begin
       if NewPassword_Edit.text=SubmitPassword_Edit.text then
          begin
            with EditPassword_table do
              begin
                edit;
                //-------修改新密码------
                fieldvalues['password']:=editpassword(NewPassword_Edit.Text);
                post;
                update;
              end;   
          end
       else
         begin
           messagebox(EditPasswordFrm.handle,'请输入正确的密码','警告',mb_ok+mb_iconwarning);
           OldPassword_Edit.text:='000000';
           NewPassword_Edit.text:='111111';
           SubmitPassword_Edit.text:='222222';
          end;
       end
    else
      begin
        messagebox(EditPasswordFrm.handle,'请输入正确的密码','警告',mb_ok+mb_iconwarning);
        OldPassword_Edit.text:='000000';
        NewPassword_Edit.text:='111111';
        SubmitPassword_Edit.text:='222222';
      end;
end;

procedure TEditPasswordFrm.FormShow(Sender: TObject);
begin
  EditPassword_Table.active:=False;
  EditPassword_Table.active:=True;
  EditPassword_table.first;
  UserName_ComboBox.items.Clear;
  //-------读取数据库中的用户------
   while not EditPassword_table.eof do
      begin
       UserName_ComboBox.items.insert(-1,EditPassword_table.fieldbyname('username').asstring);
       EditPassword_table.Next;
      end;
end;

end.

⌨️ 快捷键说明

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