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

📄 hm_user.pas

📁 本课题是为企业人事管理提供现代化技术支持的管理信息系统
💻 PAS
字号:
unit hm_user;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, DB, ADODB, Grids, DBGrids;

type
  Thm_userForm = class(TForm)
    DBGrid1: TDBGrid;
    ADOQuery1: TADOQuery;
    DataSource1: TDataSource;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    GroupBox1: TGroupBox;
    SpeedButton4: TSpeedButton;
    SpeedButton5: TSpeedButton;
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Edit2: TEdit;
    Label3: TLabel;
    ComboBox1: TComboBox;
    Label4: TLabel;
    ComboBox2: TComboBox;
    Edit3: TEdit;
    SpeedButton6: TSpeedButton;
    ADOQuery2: TADOQuery;
    Label5: TLabel;
    Label6: TLabel;
    Edit4: TEdit;
    Edit5: TEdit;
    procedure ComboBox2Click(Sender: TObject);
    procedure SpeedButton6Click(Sender: TObject);
    procedure DBGrid1CellClick(Column: TColumn);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton4Click(Sender: TObject);
    procedure SpeedButton5Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  hm_userForm: Thm_userForm;

implementation

uses hm_main;

{$R *.dfm}

//-------------关闭用户管理窗口时,显示主窗口
procedure Thm_userForm.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
    hm_mainForm.Visible:=true;
end;

//---------------选择查询关键词--------------
procedure Thm_userForm.ComboBox2Click(Sender: TObject);
begin
    if ComboBox2.ItemIndex=4 then
    begin
        //用户名作关键词时,显示输入窗口
        Edit5.Clear;
        Edit5.Visible:=true;
    end
    else
    begin
        //其他关键词时,关闭输入窗口
        Edit5.Visible:=false;
    end;
end;

//---------------------查询选项---------------
procedure Thm_userForm.SpeedButton6Click(Sender: TObject);
var
tempstr:array[1..1,1..5] of string;
begin
    //五种情况
    tempstr[1,1]:='';
    tempstr[1,2]:='where 权限 = 1';
    tempstr[1,3]:='where 权限 = 2';
    tempstr[1,4]:='where 权限 = 3';
    tempstr[1,5]:='where 用户名 = '''+Edit5.Text +'''';
    //查询
    ADOQuery1.close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Text := 'select * from 用户清单 '+tempstr[1,ComboBox2.ItemIndex+1];
    ADOQuery1.Open;
    //清除上次的显示信息
    Edit1.Clear;
    Edit2.Clear;
    Edit3.Clear;
    Edit4.Clear;
    ComboBox1.Text:='';
    DBGrid1CellClick(nil);
end;

//-------------点击表格,显示详细信息
procedure Thm_userForm.DBGrid1CellClick(Column: TColumn);
begin
    if ADOQuery1.RecordCount = 0 then Exit;
    Edit1.Text:=ADOQuery1.FieldByName('用户名').AsString;
    Edit2.Text:=ADOQuery1.FieldByName('密码').AsString;
    Edit3.Text:=ADOQuery1.FieldByName('真实名').AsString;
    Edit4.Text:=ADOQuery1.FieldByName('员工号').AsString;
    ComboBox1.ItemIndex:=ADOQuery1.FieldByName('权限').AsInteger-1;
end;

//------------------选择修改--------------------
procedure Thm_userForm.SpeedButton1Click(Sender: TObject);
begin
    if ADOQuery1.RecordCount = 0 then Exit;
    SpeedButton4.Visible:=true;
    SpeedButton5.Visible:=true;
    SpeedButton2.Enabled:=false;
    SpeedButton3.Enabled:=false;
end;

//------------------选择添加--------------------
procedure Thm_userForm.SpeedButton2Click(Sender: TObject);
begin
    SpeedButton4.Visible:=true;
    SpeedButton5.Visible:=true;
    SpeedButton1.Enabled:=false;
    SpeedButton3.Enabled:=false;
end;

//---------------------选择清除用户--------------
procedure Thm_userForm.SpeedButton3Click(Sender: TObject);
begin
    if ADOQuery1.RecordCount = 0 then Exit;
    ADOQuery2.close;
    ADOQuery2.Open;
    if ADOQuery2.RecordCount = 0 then Exit;
    if MessageBox(handle,pchar('要删除'+ADOQuery1.FieldByName('用户名').AsString+'用户吗?'), '提示', mb_IconQuestion + mb_OkCancel) = idOk then
    begin
        ADOQuery2.close;
        ADOQuery2.SQL.Clear;
        ADOQuery2.SQL.Text := 'delete from 用户清单 where 编号 ='+ADOQuery1.FieldByName('编号').AsString;
        ADOQuery2.ExecSQL;
        ADOQuery1.close;
        ADOQuery1.Open;
        Edit1.Clear;
        Edit2.Clear;
        Edit3.Clear;
        Edit4.Clear;
        ComboBox1.ItemIndex:=-1;
    end;
end;

//----------------- 确定修改,添加----------------------
procedure Thm_userForm.SpeedButton4Click(Sender: TObject);
begin
    if SpeedButton1.Enabled=true then
    begin
        ADOQuery1.Edit;//修改
    end
    else
    begin
        ADOQuery1.Append;//添加
    end;
    //提取更新的信息,并提交
    ADOQuery1.FieldByName('用户名').AsString:=Edit1.Text;
    ADOQuery1.FieldByName('密码').AsString:=Edit2.Text;
    ADOQuery1.FieldByName('权限').AsInteger:=ComboBox1.ItemIndex+1;
    ADOQuery1.FieldByName('真实名').AsString:=Edit3.Text;
    ADOQuery1.FieldByName('员工号').AsString:=Edit4.Text;
    ADOQuery1.Post;
    //清除信息
    Edit1.Clear;
    Edit2.Clear;
    Edit3.Clear;
    Edit4.Clear;
    ComboBox1.ItemIndex:=-1;
    SpeedButton5Click(nil);
end;
//------------------取消修改,添加操作-----------------
procedure Thm_userForm.SpeedButton5Click(Sender: TObject);
begin
  SpeedButton4.Visible:=false;
  SpeedButton5.Visible:=false;
  SpeedButton2.Enabled:=true;
  SpeedButton3.Enabled:=true;
  SpeedButton1.Enabled:=true;
end;

procedure Thm_userForm.FormShow(Sender: TObject);
begin
  SpeedButton6Click(nil);
end;

end.

⌨️ 快捷键说明

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