📄 hm_emp.~pas
字号:
unit hm_emp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, ExtCtrls, StdCtrls, ComCtrls, ToolWin, Buttons,
DB, ADODB;
type
Thm_empForm = class(TForm)
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
StatusBar1: TStatusBar;
DBGrid1: TDBGrid;
DBGrid2: TDBGrid;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Label4: TLabel;
Memo1: TMemo;
Edit4: TEdit;
Label5: TLabel;
Label6: TLabel;
Label8: TLabel;
Memo2: TMemo;
DataSource1: TDataSource;
DataSource2: TDataSource;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
Edit3: TEdit;
ComboBox1: TComboBox;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
ADOQuery3: TADOQuery;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DBGrid1CellClick(Column: TColumn);
procedure FormCreate(Sender: TObject);
procedure DBGrid2CellClick(Column: TColumn);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure RadioButton2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
hm_empForm: Thm_empForm;
implementation
uses hm_main, hm_login;
{$R *.dfm}
//--------------招聘信息窗口生成时,为对对普通用户封锁编辑类选项
procedure Thm_empForm.FormCreate(Sender: TObject);
begin
//3、为对对普通用户封锁编辑类选项
if hm_loginForm.idright < 2 then
begin
SpeedButton1.Enabled:=false;
SpeedButton2.Enabled:=false;
SpeedButton3.Enabled:=false;
end;
end;
//---------------当招聘信息窗口显示时,1、初始化编辑模式为对招聘有效;
//----------------------------------2、显示所有的招聘信息
procedure Thm_empForm.FormShow(Sender: TObject);
var
i:integer;
begin
//1、初始化编辑模式为对招聘有效;
RadioButton1.Checked:=true;
//将部门信息填入Combobox1
ADOQuery2.close;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Text := 'select * from 部门信息';
ADOQuery2.Open;
if not ADOQuery2.Eof then
begin
Combobox1.Clear;
for i :=0 to ADOQuery2.RecordCount - 1 do
begin
Combobox1.AddItem(ADOQuery2.FieldByName('名称').AsString, nil);
ADOQuery2.next;
end;
end;
ADOQuery2.close;
//2、显示所有的招聘信息
ADOQuery1.close;
ADOQuery1.Open;
if ADOQuery1.RecordCount =0 then
begin
ShowMessage('目前没有招聘信息!');
end;
Edit1.Clear;
Edit2.Clear;
Edit3.Clear;
Edit4.Clear;
Memo1.Clear;
Memo2.Clear;
DBGrid1CellClick(nil);
end;
//--------招聘信息窗口关闭时,显示主窗口--------------
procedure Thm_empForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
hm_mainForm.Visible:=true;
end;
//--------点击招聘信息表时,在下面显示详细信息同时显示相关的应聘信息
procedure Thm_empForm.DBGrid1CellClick(Column: TColumn);
begin
if ADOQuery1.RecordCount = 0 then Exit;
//显示详细信息
Edit1.Text := DBGrid1.Fields[0].AsString ;
ComboBox1.Text := DBGrid1.Fields[1].AsString ;
Edit2.Text := DBGrid1.Fields[2].AsString ;
Memo1.Text := ADOQuery1.FieldByName('要求').AsString;
//显示相关的应聘信息
if (trim(ADOQuery1.FieldByName('条目号').AsString)<>'') then
begin
GroupBox2.Caption:='应聘信息 of 岗位 '+Edit1.Text;
ADOQuery2.close;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Text := 'select * from 应聘信息 where 招聘条目='+ADOQuery1.FieldByName('条目号').AsString;
ADOQuery2.Open;
Edit3.Clear;
Edit4.Clear;
Memo2.Clear;
end;
end;
//--------点击招聘信息表时,显示详细信息-------------
procedure Thm_empForm.DBGrid2CellClick(Column: TColumn);
begin
if ADOQuery2.RecordCount = 0 then Exit;
Edit3.Text := ADOQuery2.FieldByName('姓名').AsString;//DBGrid1.Fields[0].AsString ;
Edit4.Text := ADOQuery2.FieldByName('联系电话').AsString;//DBGrid1.Fields[1].AsString ;
Memo2.Text := ADOQuery2.FieldByName('个人简介').AsString;
end;
//------------------选择修改--------------------
procedure Thm_empForm.SpeedButton1Click(Sender: TObject);
begin
//根据编辑模式,将确定和取消按钮移到相应位置
if RadioButton1.Checked then
begin //招聘信息窗口下
SpeedButton4.Left:=81;
SpeedButton5.Left:=177;
end
else
begin//应聘信息窗口下
SpeedButton4.Left:=353;
SpeedButton5.Left:=457;
end;
SpeedButton4.Visible:=true;
SpeedButton5.Visible:=true;
SpeedButton2.Enabled:=false;
SpeedButton3.Enabled:=false;
end;
//------------------选择添加--------------------
procedure Thm_empForm.SpeedButton2Click(Sender: TObject);
begin
//同上,根据编辑模式,将确定和取消按钮移到相应位置
if RadioButton1.Checked then
begin
SpeedButton4.Left:=81;
SpeedButton5.Left:=177;
end
else
begin
SpeedButton4.Left:=353;
SpeedButton5.Left:=457;
end;
SpeedButton4.Visible:=true;
SpeedButton5.Visible:=true;
SpeedButton1.Enabled:=false;
SpeedButton3.Enabled:=false;
end;
//---------------------选择清除条目信息--------------
procedure Thm_empForm.SpeedButton3Click(Sender: TObject);
var
tempstr:string;
num:string;
begin
//区分编辑模式
if RadioButton1.Checked then
begin
if ADOQuery1.RecordCount = 0 then
begin
showmessage('记录不存在,请重新选择');
exit;
end;
num:=ADOQuery1.FieldByName('条目号').AsString;
tempstr:='招聘';
end
else
begin
if (ADOQuery2.RecordCount = 0) then
begin
showmessage('记录不存在,请重新选择');
exit;
end;
num:=ADOQuery2.FieldByName('条目号').AsString;
tempstr:='应聘';
end;
if Trim(num) = '' then
begin
showmessage('记录不存在,请重新选择');
exit;
end;
//执行删除操作
if MessageBox(handle,pchar('要删除此'+tempstr+'条目吗?'), '提示', mb_IconQuestion + mb_OkCancel) = idOk then
begin
ADOQuery3.close;
ADOQuery3.SQL.Clear;
ADOQuery3.SQL.Text := 'delete from '+tempstr+'信息 where 条目号 ='+num;
ADOQuery3.ExecSQL;
ADOQuery1.close;
ADOQuery2.close;
ADOQuery1.Open;
ADOQuery2.Open;
end;
end;
//----------------- 确定修改,添加----------------------
procedure Thm_empForm.SpeedButton4Click(Sender: TObject);
begin
if RadioButton1.Checked then//对招聘信息操作
begin
if SpeedButton1.Enabled=true then//区分是修改还是添加
begin
if ADOQuery1.RecordCount = 0 then exit;
ADOQuery1.Edit;
end
else
begin
ADOQuery1.Append;
end;
//执行
ADOQuery1.FieldByName('招聘岗位').AsString:=Edit1.Text;
ADOQuery1.FieldByName('所属部门').AsString:=ComboBox1.Text;
ADOQuery1.FieldByName('人数').AsString:=Edit2.Text;
ADOQuery1.FieldByName('要求').AsString:=Memo1.Text;
ADOQuery1.Post;
end
else
begin
if SpeedButton1.Enabled=true then//对应聘信息操作 ;同上
begin
if ADOQuery1.RecordCount = 0 then exit;
ADOQuery2.Edit;
end
else
begin
ADOQuery2.Append;
end;
ADOQuery2.FieldByName('招聘条目').AsString:=ADOQuery1.FieldByName('条目号').AsString;
ADOQuery2.FieldByName('姓名').AsString:=Edit3.Text;
ADOQuery2.FieldByName('联系电话').AsString:=Edit4.Text;
ADOQuery2.FieldByName('个人简介').AsString:=Memo2.Text;
ADOQuery2.Post;
end;
SpeedButton5Click(nil);
end;
//------------------取消修改,添加操作-----------------
procedure Thm_empForm.SpeedButton5Click(Sender: TObject);
begin
SpeedButton4.Visible:=false;
SpeedButton5.Visible:=false;
SpeedButton2.Enabled:=true;
SpeedButton3.Enabled:=true;
SpeedButton1.Enabled:=true;
end;
procedure Thm_empForm.RadioButton2Click(Sender: TObject);
begin
DBGrid2CellClick(nil);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -