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

📄 ygddgl.pas

📁 用delphi编写的人事管理系统
💻 PAS
字号:
unit ygddgl;

interface

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

type
  TForm80 = class(TForm41)
    Panel1: TPanel;
    Label1: TLabel;
    SpeedButton1: TSpeedButton;
    ComboBox1: TComboBox;
    ComboBox2: TComboBox;
    Panel2: TPanel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label2: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Panel3: TPanel;
    Label10: TLabel;
    ComboBox3: TComboBox;
    Label11: TLabel;
    Edit1: TEdit;
    Panel4: TPanel;
    Image1: TImage;
    Image2: TImage;
    Label12: TLabel;
    Image3: TImage;
    Image4: TImage;
    Label13: TLabel;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    Label14: TLabel;
    Image6: TImage;
    Image8: TImage;
    ListBox1: TListBox;
    procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image3MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image3MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure FormShow(Sender: TObject);
    Procedure Clear;
    procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);
    procedure ComboBox1Change(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure DBGrid1DblClick(Sender: TObject);
    procedure DBGrid1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Image1Click(Sender: TObject);
    procedure Image3Click(Sender: TObject);
    procedure Image6MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image6MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image6Click(Sender: TObject);
    procedure ComboBox3KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure ListBox1DblClick(Sender: TObject);
    procedure ListBox1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form80: TForm80;

implementation
  uses Dataa;
{$R *.dfm}

procedure TForm80.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  inherited;
  Image1.Visible := False;
  Image2.Visible := True;
end;

procedure TForm80.Image1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  inherited;
  Image2.Visible := False;
  Image1.Visible := True;
end;

procedure TForm80.Image3MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  inherited;
  Image3.Visible := False;
  Image4.Visible := True;
end;

procedure TForm80.Image3MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  inherited;
  Image4.Visible := False;
  Image3.Visible := True;
end;

procedure TForm80.FormShow(Sender: TObject);
begin
  inherited;
  with Data3.ADOQuery1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('select Distinct 部门名称 from 部门信息表');
    Open;
  end;
  ComboBox3.Clear;
  if Data3.ADOQuery1.RecordCount>0 then
    while Not Data3.ADOQuery1.Eof do
    begin
      ComboBox3.Items.Add(Data3.ADOQuery1.FieldByName('部门名称').Value);
      Data3.ADOQuery1.Next;
    end;
end;

procedure TForm80.ComboBox1KeyPress(Sender: TObject; var Key: Char);
begin
  inherited;
  Key := #0;
end;

procedure TForm80.ComboBox1Change(Sender: TObject);
begin
  inherited;
  if Trim(ComboBox1.Text)<>'' then
  begin
    with Data3.ADOQuery1 do
    begin
      Close;
      SQL.Clear;
      SQL.Add('select distinct');
      SQL.Add(Trim(ComboBox1.Text));
      SQL.Add('From 员工基础信息表');
      Open;
    end;
    if Data3.ADOQuery1.RecordCount>0 then
    begin
      ComboBox2.Clear;
      while Not Data3.ADOQuery1.Eof do
      begin
        ComboBox2.Items.Add(Data3.ADOQuery1.Fields[0].Value);
        Data3.ADOQuery1.Next;
      end;
    end;
  end;
end;

procedure TForm80.SpeedButton1Click(Sender: TObject);
begin
  inherited;
  if (Trim(ComboBox1.Text)<>'')and(Trim(ComboBox2.Text)<>'')then
  begin
    with Data3.ADOQuery1 do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Select * from 员工基础信息表 where ');
      SQL.Add(Trim(ComboBox1.Text));
      SQL.Add('= :a');
      Parameters.ParamByName('a').Value := Trim(ComboBox2.Text);
      Open;
    end;
    if Data3.ADOQuery1.RecordCount>0 then
      if Data3.ADOQuery1.RecordCount>1 then
      begin
        DataSource1.DataSet := Data3.ADOQuery1;
        DBGrid1.Visible := True;
        DBGrid1.SetFocus;
      end
      else
      begin
        Label2.Caption := Data3.ADOQuery1.FieldByName('员工编号').Value;
        Label7.Caption := Data3.ADOQuery1.FieldByName('员工姓名').Value;
        Label8.Caption := Data3.ADOQuery1.FieldByName('部门编号').Value;
        Label9.Caption := Data3.ADOQuery1.FieldByName('部门名称').Value;
      end;
  end;
end;

procedure TForm80.DBGrid1DblClick(Sender: TObject);
begin
  inherited;
  Label2.Caption := Data3.ADOQuery1.FieldByName('员工编号').Value;
  Label7.Caption := Data3.ADOQuery1.FieldByName('员工姓名').Value;
  Label8.Caption := Data3.ADOQuery1.FieldByName('部门编号').Value;
  Label9.Caption := Data3.ADOQuery1.FieldByName('部门名称').Value;
  DBGrid1.Visible := False;
end;

procedure TForm80.DBGrid1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  inherited;
  if Key = Vk_ReTurn then
  DBGrid1.OnDblClick(Sender);
end;

procedure TForm80.Clear;
begin
  DataSource1.DataSet := Nil;
  DBGrid1.Visible := False;
  Label2.Caption := '';
  Label7.Caption := '';
  Label8.Caption := '';
  Label9.Caption :='';
  ComboBox3.Text := '';
  Edit1.Clear;
  ListBox1.Clear;
  ListBox1.Visible := False;
  ComboBox3.Enabled := True;
end;

procedure TForm80.Image1Click(Sender: TObject);
begin
  inherited;
  Close;
end;

procedure TForm80.Image3Click(Sender: TObject);
begin
  inherited;
  if (Trim(Label2.Caption)<>'')and(Trim(Label7.Caption)<>'')and
  (Trim(Label9.Caption)<>'')and(Trim(ComboBox3.Text)<>'')and(Trim(Edit1.Text)<>'') then
    if Application.MessageBox('确实要修改该员工部门信息吗?','提示',MB_YesNo)= ID_Yes then
    begin
      Try
        with Data3.ADOQuery2 do
        begin
          Close;
          SQL.Clear;
          SQL.Add('Update 员工基础信息表 set 部门名称 = :a , 部门编号 = :b where 员工编号 = :c');
          Parameters.ParamByName('a').Value := Trim(ComboBox3.Text);
          Parameters.ParamByName('b').Value := Trim(Edit1.Text);
          Parameters.ParamByName('c').Value := Trim(Label2.Caption);
          ExecSQL;
        end;
        Clear;
        Application.MessageBox('数据修改成功。','提示',64);
      Except
        Application.MessageBox('系统出错。','提示',64);
        Close;
      end;
    end;
end;

procedure TForm80.Image6MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  inherited;
  Image6.Visible := False;
  Image8.Visible := True;
end;

procedure TForm80.Image6MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  inherited;
  Image8.Visible := False;
  Image6.Visible := True;
end;

procedure TForm80.Image6Click(Sender: TObject);
begin
  inherited;
  Clear;
end;

procedure TForm80.ComboBox3KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  inherited;
  if (Trim(ComboBox3.Text)<>'')and(Key = VK_ReTurn) then
  begin
    with Data3.ADOQuery1 do
    begin
      Close;
      SQL.Clear;
      SQL.Add('select * from 部门信息表 where 部门名称 = :a');
      Parameters.ParamByName('a').Value := Trim(ComboBox3.Text);
      Open;
    end;
    if Data3.ADOQuery1.RecordCount>0 then
    begin
      if Data3.ADOQuery1.RecordCount>1 then
      begin
        ListBox1.Clear;
        while NOt Data3.ADOQuery1.Eof do
        begin
          ListBox1.Items.Add(Data3.ADOQuery1.FieldByName('部门编号').Value);
          Data3.ADOQuery1.Next;
        end;
        ListBox1.Visible := True;
        ListBox1.SetFocus;
      end
      else
        Edit1.Text := Data3.ADOQuery1.FieldByName('部门编号').Value;
      ComboBox3.Enabled := False;
    end
    else
    begin
      ComboBox3.Text := '';
      Application.MessageBox('该部门不存在,请重新输入。','提示',64);
    end;
  end;
end;

procedure TForm80.ListBox1DblClick(Sender: TObject);
begin
  inherited;
  Edit1.Text := ListBox1.Items[ListBox1.ItemIndex];
  ListBox1.Visible := False;
end;

procedure TForm80.ListBox1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  inherited;
  if Key = VK_Return then
    ListBox1.OnDblClick(Sender);
end;

end.

⌨️ 快捷键说明

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