📄 zgb1.pas
字号:
unit zgb1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, jpeg, ExtCtrls, DB, DBTables, DBCtrls, Grids, DBGrids,shellapi,
Buttons, ComCtrls, TFlatRadioButtonUnit, TFlatGroupBoxUnit,
TFlatSpeedButtonUnit;
type
Tzgb = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Edit1: TEdit;
Edit2: TEdit;
ComboBox1: TComboBox;
ComboBox2: TComboBox;
DBNavigator1: TDBNavigator;
ComboBox3: TComboBox;
zgb: TTable;
DataSource1: TDataSource;
bmb: TTable;
bmbBDEDesigner: TStringField;
bmbBDEDesigner2: TStringField;
bmb1: TTable;
bmb1BDEDesigner: TStringField;
bmb1BDEDesigner2: TStringField;
zc: TTable;
zgbBDEDesigner: TStringField;
zgbBDEDesigner2: TStringField;
zgbBDEDesigner3: TStringField;
zgbBDEDesigner4: TStringField;
zgbBDEDesigner5: TStringField;
zgbDate: TDateField;
button7: TSpeedButton;
button1: TSpeedButton;
button2: TSpeedButton;
Button4: TSpeedButton;
Button3: TSpeedButton;
Button5: TSpeedButton;
button6: TSpeedButton;
bitbtn1: TSpeedButton;
Edit3: TEdit;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
ComboBox4: TComboBox;
ComboBox5: TComboBox;
gzb: TTable;
Label10: TLabel;
gzbBDEDesigner: TStringField;
gzbBDEDesigner2: TStringField;
gzbBDEDesigner3: TStringField;
gzbBDEDesigner4: TStringField;
gzbBDEDesigner5: TStringField;
FlatGroupBox1: TFlatGroupBox;
RadioButton1: TFlatRadioButton;
RadioButton2: TFlatRadioButton;
Speed1: TSpeedButton;
procedure Button6Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);
procedure ComboBox3KeyPress(Sender: TObject; var Key: Char);
procedure RadioButton2Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure RadioButton1Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormPaint(Sender: TObject);
procedure ComboBox2Click(Sender: TObject);
procedure ComboBox1Click(Sender: TObject);
procedure ComboBox3Click(Sender: TObject);
procedure ComboBox2Change(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure ComboBox3Change(Sender: TObject);
procedure Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure ComboBox4Click(Sender: TObject);
procedure ComboBox4KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure ComboBox5KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure ComboBox4KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure ComboBox5KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Label10MouseEnter(Sender: TObject);
procedure Label10MouseLeave(Sender: TObject);
procedure Speed1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
zgb: Tzgb;
f,index:integer;
flag:integer;
implementation
uses gzb1,quan, hint2;
{$R *.dfm}
procedure Tzgb.Button6Click(Sender: TObject);
begin
flag:=1;
if button5.Enabled=true then
if application.MessageBox('关闭前的操作未保存,要保存吗?保存则按确定,否则按取消','关闭',mb_okcancel+mb_iconquestion)=idok then
button5.Click;
close;
end;
procedure Tzgb.FormCreate(Sender: TObject);
begin
RadioButton1.Checked:=true;
flag:=0;
button1.Enabled:=true;
button2.Enabled:=true;
button3.Enabled:=false;
button4.Enabled:=true;
button5.Enabled:=false;
zgb.Active:=false;
zgb.DatabaseName:=s;
zgb.TableName:='zgb.db';
zgb.Active:=true;
gzb.Active:=false;
gzb.DatabaseName:=s;
gzb.TableName:='gzb.db';
gzb.Active:=true;
zc.Active:=false;
zc.DatabaseName:=s;
zc.TableName:='zc.db';
zc.Active:=true;
bmb.Active:=false;
bmb.DatabaseName:=s;
bmb.TableName:='bmb.db';
bmb.Active:=true;
bmb1.Active:=false;
bmb1.DatabaseName:=s;
bmb1.TableName:='bmb.db';
bmb1.Active:=true;
zgb.IndexName:='';
if zgb.RecordCount=0 then
begin
button7.Enabled:=false;
button4.Enabled:=false;
end;
edit1.ReadOnly:=true;
edit2.ReadOnly:=true;
edit3.ReadOnly:=true;
DBNavigator1.Enabled:=true;
combobox3.Enabled:=false;
combobox1.Enabled:=false;
combobox2.Enabled:=false;
end;
procedure Tzgb.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
var year,month,day:word;
days,months:string;
begin
edit1.Text:=qu.cf(zgb.fieldbyname('职工编号').asstring);
edit2.Text:=qu.cf(zgb.fieldbyname('姓名').asstring);
decodedate(zgb.fieldbyname('date').Value,year,month,day);
months:=inttostr(month);
days:=inttostr(day);
edit3.Text:=inttostr(year);
combobox4.Text:=months;
combobox5.Text:=days;
combobox3.Text:=qu.cf(zgb.fieldbyname('职称').asstring);
combobox1.Text:=qu.cf(zgb.fieldbyname('性别').asstring);
combobox2.Text:=qu.cf(bmb.fieldbyname('部门名称').asstring);
end;
procedure Tzgb.Button1Click(Sender: TObject);
var i,j:integer;
begin
speed1.Enabled:=false;
button4.Enabled:=false;
zc.Active:=false;
zc.DatabaseName:=s;
zc.TableName:='zc.db';
zc.Active:=true;
bmb1.Active:=false;
bmb1.DatabaseName:=s;
bmb1.TableName:='bmb.db';
bmb1.Active:=true;
zc.First;
bmb1.First;
zgb.IndexName:='';
f:=0;
combobox2.Clear;
combobox3.Clear;
for i:=0 to bmb1.RecordCount-1 do
begin
combobox2.Items.Add(qu.cf(bmb1.fieldbyname('部门名称').asstring));
bmb1.Next;
end;
for j:=0 to zc.RecordCount-1 do
begin
combobox3.Items.Add(qu.cf(zc.fieldbyname('职称').asstring));
zc.Next;
end;
edit1.ReadOnly:=false;
edit2.ReadOnly:=false;
edit3.ReadOnly:=false;
combobox3.Enabled:=true;
combobox1.Enabled:=true;
combobox2.Enabled:=true;
combobox4.Enabled:=true;
combobox5.Enabled:=true;
combobox1.Style:=csDropDownList;
combobox3.Style:=csDropDownList;
combobox2.Style:=csDropDownList;
combobox4.Style:=csDropDownList;
combobox5.Style:=csDropDownList;
DBNavigator1.Enabled:=FALSE;
button3.Enabled:=true;
button5.Enabled:=true;
button1.Enabled:=false;
edit1.Text:='';
edit2.Text:='';
edit3.Text:='1990';
combobox4.Text:='12';
combobox5.Text:='12';
combobox3.Text:='';
combobox2.Text:='';
combobox1.Text:='';
edit1.SetFocus;
end;
procedure Tzgb.Button3Click(Sender: TObject);
var year,month,day:word;
days,months:string;
begin
speed1.Enabled:=true;
edit1.ReadOnly:=true;
edit2.ReadOnly:=true;
edit3.ReadOnly:=true;
combobox3.Enabled:=false;
DBNavigator1.Enabled:=true;
button1.Enabled:=true;
button2.Enabled:=true;
button3.Enabled:=false;
button4.Enabled:=true;
button5.Enabled:=false;
combobox1.Enabled:=false;
combobox2.Enabled:=false;
combobox1.Style:=csDropDown;
combobox2.Style:=csDropDown;
combobox3.Style:=csDropDown;
combobox4.Enabled:=false;
combobox5.Enabled:=false;
zgb.Prior;
edit1.Text:=qu.cf(zgb.fieldbyname('职工编号').asstring);
edit2.Text:=qu.cf(zgb.fieldbyname('姓名').asstring);
if zgb.fieldbyname('date').AsString<>'' then
begin
decodedate(zgb.fieldbyname('date').Value,year,month,day);
days:=inttostr(day);
months:=inttostr(month);
edit3.Text:=inttostr(year);
combobox4.Text:=months;
combobox5.Text:=days;
end;
combobox3.Text:=qu.cf(zgb.fieldbyname('职称').asstring);
combobox1.Text:=qu.cf(zgb.fieldbyname('性别').asstring);
combobox2.Text:=qu.cf(bmb.fieldbyname('部门名称').asstring);
if zgb.RecordCount=0 then
begin
button2.Enabled:=false;
button4.Enabled:=false;
end
end;
procedure Tzgb.Button5Click(Sender: TObject);
var year,month,day:word;
days,months:string;
begin
if (edit3.Text='') or (combobox4.Text='') or (combobox5.Text='') then
if application.MessageBox('日期输入错误,修改之请按"确定",否则将取消本次操作!如果部门名称的下拉框中无可选项,请选择"数据维护"菜单的"部门维护"子菜单,添加相关项即可!','警告',mb_okcancel+mb_iconinformation)=idok then
begin
edit3.SetFocus ;
exit;
end
else
begin
button3.Click;
exit;
end;
if ComboBox2.Text='' then
if application.MessageBox('部门名称不可为空,继续请按"确定",否则将取消本次操作!如果部门名称的下拉框中无可选项,请选择"数据维护"菜单的"部门维护"子菜单,添加相关项即可!','警告',mb_okcancel+mb_iconinformation)=idok then
begin
combobox2.SetFocus ;
exit;
end
else
begin
button3.Click;
exit;
end;
if ComboBox3.Text='' then
if application.MessageBox('继续请按"确定",否则将取消本次操作!如果部门名称的下拉框中无可选项,请选择"数据维护"菜单的"职称维护"子菜单,添加相关项即可!','警告',mb_okcancel+mb_iconinformation)=idok then
begin
combobox2.SetFocus ;
exit;
end
else
begin
button3.Click;
exit;
end ;
button7.Enabled:=true;
zgb.Active:=true;
if f=0 then
begin
zgb.SetKey;
zgb.fieldbyname('职工编号').asstring:=qu.cf(edit1.Text);
if (zgb.GotoKey) or (edit1.text='') then
begin
application.MessageBox('此编号已存在或编号为空','信息',mb_ok+mb_iconinformation);
zgb.Next;
combobox1.Style:=cssimple;
combobox3.Style:=cssimple;
combobox2.Style:=cssimple;
edit1.Text:=qu.cf(zgb.fieldbyname('职工编号').asstring);
edit2.Text:=qu.cf(zgb.fieldbyname('姓名').asstring);
decodedate(zgb.fieldbyname('date').Value,year,month,day);
days:=inttostr(day);
months:=inttostr(month);
edit3.Text:=inttostr(year);
combobox4.Text:=months;
combobox5.Text:=days;
combobox3.Text:=qu.cf(zgb.fieldbyname('职称').asstring);
combobox1.Text:=qu.cf(zgb.fieldbyname('性别').asstring);
combobox2.Text:=qu.cf(bmb.fieldbyname('部门名称').asstring);
end
else
begin
zgb.Insert;
zgb.fieldbyname('职工编号').asstring:=qu.cf(edit1.Text);
zgb.fieldbyname('姓名').asstring:=qu.cf(edit2.Text);
zgb.fieldbyname('date').Value:=strtodate(edit3.Text+'-'+combobox4.Text+'-'+combobox5.Text);
zgb.fieldbyname('职称').asstring:=qu.cf(combobox3.Text);
zgb.fieldbyname('性别').asstring:=qu.cf(combobox1.Text);
bmb1.edit;
bmb1.IndexName:='bname';
bmb1.SetKey;
bmb1.FieldByName('部门名称').AsString:=qu.cf(combobox2.Text);
if bmb1.GotoKey then
zgb.FieldByName('部门号').AsString:=bmb1.FieldByName('部门号').AsString;
zgb.Post;
end;
end
else
begin
zgb.Edit;
zgb.fieldbyname('姓名').asstring:=qu.cf(edit2.Text);
zgb.fieldbyname('date').Value:=strtodate(edit3.Text+'-'+combobox4.Text+'-'+combobox5.Text);
zgb.fieldbyname('职称').asstring:=qu.cf(combobox3.Text);
zgb.fieldbyname('性别').asstring:=qu.cf(combobox1.Text);
bmb1.edit;
bmb1.IndexName:='bname';
bmb1.SetKey;
bmb1.FieldByName('部门名称').AsString:=qu.cf(combobox2.Text);
if bmb1.GotoKey then
zgb.FieldByName('部门号').AsString:=bmb1.FieldByName('部门号').AsString;
zgb.Post;
end;
edit1.ReadOnly:=true;
edit2.ReadOnly:=true;
edit3.ReadOnly:=true;
combobox3.Enabled:=false;
DBNavigator1.Enabled:=true;
button1.Enabled:=true;
button2.Enabled:=true;
button3.Enabled:=false;
button4.Enabled:=true;
button5.Enabled:=false;
speed1.Enabled:=true;
combobox1.Enabled:=false;
combobox2.Enabled:=false;
combobox1.Style:=cssimple;
combobox3.Style:=cssimple;
combobox2.Style:=cssimple;
combobox4.Enabled:=false;
combobox5.Enabled:=false;
end;
procedure Tzgb.Button2Click(Sender: TObject);
var year,month,day:word;
days,months:string;
i,j,k:integer;
begin
button4.Enabled:=false;
speed1.Enabled:=false;
zc.Active:=false;
zc.DatabaseName:=s;
zc.TableName:='zc.db';
zc.Active:=true;
bmb1.Active:=false;
bmb1.DatabaseName:=s;
bmb1.TableName:='bmb.db';
bmb1.Active:=true;
combobox2.Clear;
combobox3.Clear;
zc.First;
bmb1.First;
for k:=0 to bmb1.RecordCount-1 do
begin
combobox2.Items.Add(qu.cf(bmb1.fieldbyname('部门名称').asstring));
bmb1.Next;
end;
for j:=0 to zc.RecordCount-1 do
begin
combobox3.Items.Add(qu.cf(zc.fieldbyname('职称').asstring));
zc.Next;
end;
if (combobox4.Text='1')or(combobox4.Text='3')or(combobox4.Text='5')or(combobox4.Text='7')or(combobox4.Text='8')or(combobox4.Text='10')or(combobox4.Text='12') then
begin
combobox5.Clear;
for i:=1 to 31 do
combobox5.Items.Add(inttostr(i));
end
else
if (combobox4.Text='4')or(combobox4.Text='6')or(combobox4.Text='9')or(combobox4.Text='11') then
begin
combobox5.Clear;
for i:=1 to 30 do
combobox5.Items.Add(inttostr(i));
end
else
begin
if ((frac(strtofloat(edit3.Text)/4)=0)and(frac(strtofloat(edit3.Text)/100)<>0))or((frac(strtofloat(edit3.Text)/100)=0)and(frac(strtofloat(edit3.Text)/400)=0)) then
begin
if combobox4.Text='2' then
begin
combobox5.Clear;
for i:=1 to 29 do
combobox5.Items.Add(inttostr(i));
end;
end
else
begin
combobox5.Clear;
for i:=1 to 28 do
combobox5.Items.Add(inttostr(i));
end;
end;
f:=1;
combobox1.Style:=csDropDown;
combobox3.Style:=csDropDown;
combobox2.Style:=csDropDown;
combobox4.Style:=csDropDown;
combobox5.Style:=csDropDown;
button2.Enabled:=false;
edit1.ReadOnly:=true;
edit2.ReadOnly:=false;
edit3.ReadOnly:=false;
combobox3.Enabled:=true;
combobox1.Enabled:=true;
combobox2.Enabled:=true;
combobox4.Enabled:=true;
combobox5.Enabled:=true;
DBNavigator1.Enabled:=FALSE;
button3.Enabled:=true;
button5.Enabled:=true;
button1.Enabled:=false;
edit2.SetFocus;
edit1.Text:=qu.cf(zgb.fieldbyname('职工编号').asstring);
edit2.Text:=qu.cf(zgb.fieldbyname('姓名').asstring);
decodedate(zgb.fieldbyname('date').Value,year,month,day);
days:=inttostr(day);
months:=inttostr(month);
edit3.Text:=inttostr(year);
combobox4.Text:=months;
combobox5.Text:=days;
combobox3.Text:=qu.cf(zgb.fieldbyname('职称').asstring);
combobox2.Text:=qu.cf(bmb.fieldbyname('部门名称').asstring);
end;
procedure Tzgb.Button4Click(Sender: TObject);
var year,month,day:word;
days,months,find:string;
begin
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -