📄 addworkrecordunit.pas
字号:
unit AddWorkRecordUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtDlgs, DB, StdCtrls, ComCtrls, Buttons, ExtCtrls;
type
TAddWorkRecord = class(TForm)
DataShowPanel: TPanel;
PageC: TPageControl;
TSData1: TTabSheet;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
edtNo: TEdit;
edtName: TEdit;
CBSex: TComboBox;
Panel2: TPanel;
Image1: TImage;
BtSelectPhoto: TSpeedButton;
CBEducation: TComboBox;
Birthday: TDateTimePicker;
WorkTime: TDateTimePicker;
CBDepartment: TComboBox;
CBJob: TComboBox;
Phone: TEdit;
edtMoney: TEdit;
edtAddress: TEdit;
edtPwd: TEdit;
TSData2: TTabSheet;
Label13: TLabel;
Memo1: TMemo;
OpenPictureDialog1: TOpenPictureDialog;
Panel1: TPanel;
BTaddData: TSpeedButton;
BtReSet: TSpeedButton;
BtExit: TSpeedButton;
procedure BTaddDataClick(Sender: TObject);
procedure BtReSetClick(Sender: TObject);
procedure BtExitClick(Sender: TObject);
procedure BtSelectPhotoClick(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
Procedure SaveData;
Procedure SavePhoto;
Procedure Inition;
public
{ Public declarations }
end;
var
AddWorkRecord: TAddWorkRecord;
implementation
uses DataMUnit;
{$R *.dfm}
Procedure TAddWorkRecord.Inition;
begin
edtNo.Text :='';
edtName.Text :='';
CBSex.Text := '';
CBEducation.Text := '';
CBJob.Text := '';
CBDepartment.Text := '';
Birthday.Date := now;
WorkTime.Date := now;
Phone.Text := '';
edtMoney.Text := '';
edtAddress.Text := '';
edtPwd.Text := '';
end;
Procedure TaddWorkRecord.SaveData;
begin
DataM.ADOMSG.FieldByName('员工编号').AsString := Trim(edtNo.Text);
DataM.ADOMSG.FieldByName('员工姓名').AsString := Trim(edtName.Text);
DataM.ADOMSG.FieldByName('性别').AsString := Trim(CBSex.Text);
DataM.ADOMSG.FieldByName('出生年月').AsVariant := Birthday.Date;
DataM.ADOMSG.FieldByName('学历').AsString := Trim(CBEducation.Text);
DataM.ADOMSG.FieldByName('部门').AsString := Trim(CBDepartment.Text);
DataM.ADOMSG.FieldByName('职位').AsString := Trim(CBJob.Text);
DataM.ADOMSG.FieldByName('开始工作时间').AsVariant := WorkTime.Date;
DataM.ADOMSG.FieldByName('工资').AsString := Trim(edtMoney.Text);
DataM.ADOMSG.FieldByName('联系电话').AsString := Trim(Phone.Text);
DataM.ADOMSG.FieldByName('通信地址').AsString := Trim(edtAddress.Text);
DataM.ADOMSG.FieldByName('密码').AsString := Trim(edtPwd.Text);
DataM.ADOMSG.FieldByName('备注').AsString := Trim(memo1.Text);
end;
Procedure TaddWorkRecord.SavePhoto;
var
strm:tmemorystream;
ext:string;
begin
if image1.picture.Graphic <> nil then //避免image1中无图像保存出错
begin
ext:=extractfileext(openpicturedialog1.FileName ); //取出文件的扩展名
strm := tmemorystream.Create ;
try
image1.Picture.Graphic.SaveToStream(strm);
DataM.ADOMsg.Edit ;
strm.Position :=0;
tblobfield(DataM.ADOMsg.FieldByName('照片')).LoadFromStream(strm);
DataM.ADOMSG.Post;
finally
strm.Free ; //笔者发现如strm采用tblobstream类,程序运行到该语句会出现问题
end;
end;
end;
procedure TAddWorkRecord.BTaddDataClick(Sender: TObject);
var sel:integer;
begin
sel:=MessageBox(0,'要添加该记录吗?','人事管理系统V1.0',MB_YESNO+MB_ICONQUESTION);
if sel = IDYES then
begin
DataM.ADOMsg.Append;
SaveData;
DataM.ADOMsg.Post;
SavePhoto;
MessageBox(0,'添加成功!','人事管理系统V1.0',MB_YESNO+MB_ICONWARNING);
end;
end;
procedure TAddWorkRecord.BtReSetClick(Sender: TObject);
begin
Inition;
end;
procedure TAddWorkRecord.BtExitClick(Sender: TObject);
begin
addWorkRecord.Close;
end;
procedure TAddWorkRecord.BtSelectPhotoClick(Sender: TObject);
begin
if openpicturedialog1.Execute then
image1.Picture.LoadFromFile(openpicturedialog1.FileName );
end;
procedure TAddWorkRecord.FormShow(Sender: TObject);
begin
Inition;
if DataM.ADOMSG.Active = true then
DataM.ADOMSG.Close;
DataM.ADOMSG.SQL.Clear;
DataM.ADOMSG.SQL.Text:='select * from MSG';
DataM.ADOMSG.Prepared;
DataM.ADOMSG.Open;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -