📄 operator.pas
字号:
unit operator;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Mask, Buttons, DB, ADODB;
type
TOperatorForm = class(TForm)
GroupBox1: TGroupBox;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
GroupBox2: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Edit3: TEdit;
Label4: TLabel;
Edit4: TEdit;
Label5: TLabel;
MaskEdit1: TMaskEdit;
GroupBox3: TGroupBox;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
CheckBox4: TCheckBox;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
ADOConnection1: TADOConnection;
procedure BitBtn2Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure Edit1Exit(Sender: TObject);
procedure RadioButton1Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure initiate;
end;
var
OperatorForm: TOperatorForm;
implementation
uses main;
{$R *.dfm}
procedure TOperatorForm.BitBtn2Click(Sender: TObject);
begin
close;
end;
procedure TOperatorForm.FormActivate(Sender: TObject);
begin
RadioButton1.Checked:=true;
initiate;
Edit1.SetFocus;
end;
procedure TOperatorForm.Edit1Exit(Sender: TObject);
var
AdoDataset1:TAdoDataSet;
begin
if edit1.text<>'' then
begin
adodataset1:=TAdoDataSet.Create(self);
adodataset1.Connection:=adoconnection1;
adodataset1.Close;
adodataset1.CommandType:=cmdtext;
adodataset1.CommandText:='select * from 操作用户表 where 用户名=:username';
adodataset1.Parameters.clear;
adodataset1.Parameters.AddParameter;
adodataset1.Parameters[0].Name:='username';
adodataset1.Parameters[0].DataType:=ftstring;
adodataset1.Parameters[0].Direction:=pdinput;
adodataset1.Parameters[0].Value:=edit1.text;
adodataset1.Active:=true;
if adodataset1.Recordset.RecordCount=1 then
begin
if radiobutton1.Checked then
begin
application.MessageBox('用户名重复,请重新输入!','提示信息',mb_ok);
edit1.SetFocus;
end
else
begin
edit2.text:=adodataset1.fieldbyname('密码').asstring;
edit3.text:=adodataset1.fieldbyname('所在单位').asstring;
edit4.text:=adodataset1.fieldbyname('操作员').asstring;
maskedit1.text:=datetostr(adodataset1.fieldbyname('最后修改时间').asDatetime);
CheckBox1.Checked:=adodataset1.fieldbyname('权限一').asboolean;
CheckBox2.Checked:=adodataset1.fieldbyname('权限二').asboolean;
CheckBox3.Checked:=adodataset1.fieldbyname('权限三').asboolean;
CheckBox4.Checked:=adodataset1.fieldbyname('权限四').asboolean;
end;
end
else
begin
if not RadioButton1.Checked then
begin
application.MessageBox('没有该用户名,请检查!','提示信息',mb_ok);
edit1.SetFocus;
end;
end;
adodataset1.Active:=false;
end;
end;
procedure TOperatorForm.RadioButton1Click(Sender: TObject);
begin
initiate;
edit1.SetFocus;
end;
procedure TOperatorForm.BitBtn1Click(Sender: TObject);
var
AdoQuery1:TAdoQuery;
begin
adoquery1:=TAdoQuery.Create(self);
adoquery1.Connection:=adoconnection1;
adoquery1.close;
if radiobutton2.Checked then
begin
adoquery1.sql.Clear;
adoquery1.sql.add('update 操作用户表 set 密码=:password,所在单位=:units,权限一=:qx1,权限二=:qx2,权限三=:qx3,权限四=:qx4,操作员=:operator,最后修改时间=:lastdate where 用户名=:username');
adoquery1.Parameters.Clear;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[0].name:='password';
adoquery1.Parameters[0].DataType:=ftstring;
adoquery1.Parameters[0].Direction:=pdinput;
adoquery1.Parameters[0].Value:=edit2.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[1].name:='units';
adoquery1.Parameters[1].DataType:=ftstring;
adoquery1.Parameters[1].Direction:=pdinput;
adoquery1.Parameters[1].Value:=edit3.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[2].name:='qx1';
adoquery1.Parameters[2].DataType:=ftboolean;
adoquery1.Parameters[2].Direction:=pdinput;
adoquery1.Parameters[2].Value:=checkbox1.checked;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[3].name:='qx2';
adoquery1.Parameters[3].DataType:=ftboolean;
adoquery1.Parameters[3].Direction:=pdinput;
adoquery1.Parameters[3].Value:=checkbox2.checked;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[4].name:='qx3';
adoquery1.Parameters[4].DataType:=ftboolean;
adoquery1.Parameters[4].Direction:=pdinput;
adoquery1.Parameters[4].Value:=checkbox3.checked;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[5].name:='qx4';
adoquery1.Parameters[5].DataType:=ftboolean;
adoquery1.Parameters[5].Direction:=pdinput;
adoquery1.Parameters[5].Value:=checkbox4.checked;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[6].name:='operator';
adoquery1.Parameters[6].DataType:=ftstring;
adoquery1.Parameters[6].Direction:=pdinput;
adoquery1.Parameters[6].Value:=edit4.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[7].name:='lastdate';
adoquery1.Parameters[7].DataType:=ftdatetime;
adoquery1.Parameters[7].Direction:=pdinput;
adoquery1.Parameters[7].Value:=StrToDate(maskedit1.text);
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[8].name:='username';
adoquery1.Parameters[8].DataType:=ftstring;
adoquery1.Parameters[8].Direction:=pdinput;
adoquery1.Parameters[8].Value:=edit1.text;
adoquery1.ExecSQL;
end
else if (radiobutton1.Checked) and (edit1.text<>'') then
begin
adoquery1.sql.clear;
adoquery1.sql.add('insert into 操作用户表(用户名,密码,所在单位,权限一,权限二,权限三,权限四,操作员,最后修改时间)values(:username,:password,:units,:qx1,:qx2,:qx3,:qx4,:operator,:lastdate)');
adoquery1.Parameters.Clear;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[0].name:='username';
adoquery1.Parameters[0].DataType:=ftstring;
adoquery1.Parameters[0].Direction:=pdinput;
adoquery1.Parameters[0].Value:=edit1.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[1].name:='password';
adoquery1.Parameters[1].DataType:=ftstring;
adoquery1.Parameters[1].Direction:=pdinput;
adoquery1.Parameters[1].Value:=edit2.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[2].name:='units';
adoquery1.Parameters[2].DataType:=ftstring;
adoquery1.Parameters[2].Direction:=pdinput;
adoquery1.Parameters[2].Value:=edit3.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[3].name:='qx1';
adoquery1.Parameters[3].DataType:=ftboolean;
adoquery1.Parameters[3].Direction:=pdinput;
adoquery1.Parameters[3].Value:=checkbox1.checked;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[4].name:='qx2';
adoquery1.Parameters[4].DataType:=ftboolean;
adoquery1.Parameters[4].Direction:=pdinput;
adoquery1.Parameters[4].Value:=checkbox2.checked;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[5].name:='qx3';
adoquery1.Parameters[5].DataType:=ftboolean;
adoquery1.Parameters[5].Direction:=pdinput;
adoquery1.Parameters[5].Value:=checkbox3.checked;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[6].name:='qx4';
adoquery1.Parameters[6].DataType:=ftboolean;
adoquery1.Parameters[6].Direction:=pdinput;
adoquery1.Parameters[6].Value:=checkbox4.checked;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[7].name:='operator';
adoquery1.Parameters[7].DataType:=ftstring;
adoquery1.Parameters[7].Direction:=pdinput;
adoquery1.Parameters[7].Value:=edit4.text;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[8].name:='lastdate';
adoquery1.Parameters[8].DataType:=ftdatetime;
adoquery1.Parameters[8].Direction:=pdinput;
adoquery1.Parameters[8].Value:=StrToDate(maskedit1.text);
adoquery1.ExecSQL;
end
else
begin
adoquery1.sql.clear;
adoquery1.sql.add('delete from 操作用户表 where 用户名=:username');
adoquery1.Parameters.Clear;
adoquery1.Parameters.AddParameter;
adoquery1.Parameters[0].name:='username';
adoquery1.Parameters[0].DataType:=ftstring;
adoquery1.Parameters[0].Direction:=pdinput;
adoquery1.Parameters[0].Value:=edit1.text;
adoquery1.ExecSQL;
initiate;
end;
adoquery1.Close;
edit1.SetFocus;
end;
procedure TOperatorForm.initiate;
begin
CheckBox1.Checked:=false;
CheckBox2.Checked:=false;
CheckBox3.Checked:=false;
CheckBox4.Checked:=false;
Edit1.Text:='';
Edit2.Text:='';
Edit3.Text:='';
edit4.text:=username;
maskedit1.text:=datetostr(Date());
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -