📄 usermanager.pas
字号:
unit UserManager;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ComCtrls, DB, ADODB, Grids, DBGrids, ExtCtrls;
type
TUserManagerF = class(TForm)
Panel3: TPanel;
DS_sysmanager: TDataSource;
ADOQry_insert: TADOQuery;
ADOQry_update: TADOQuery;
DBGd_browse: TDBGrid;
Panel1: TPanel;
GroupBox_Mkgl: TGroupBox;
Chk_Sjcl: TCheckBox;
Chk_Xfgl: TCheckBox;
Chk_Cstj: TCheckBox;
Chk_Xtwf: TCheckBox;
Panel2: TPanel;
bitbtn_insert: TBitBtn;
bitbtn_delete: TBitBtn;
bitbtn_post: TBitBtn;
bitbtn_cancel: TBitBtn;
bitbtn_quit: TBitBtn;
GroupBox1: TGroupBox;
Lbzw: TLabel;
Lbusername: TLabel;
Lbuserpassword: TLabel;
ADQ_users: TADOQuery;
Ed_userzcm: TEdit;
Ed_username: TEdit;
Ed_password: TEdit;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BitBtn2Click(Sender: TObject);
procedure bitbtn_quitClick(Sender: TObject);
procedure bitbtn_insertClick(Sender: TObject);
procedure bitbtn_deleteClick(Sender: TObject);
procedure bitbtn_postClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure DBGd_browseDblClick(Sender: TObject);
procedure bitbtn_cancelClick(Sender: TObject);
private
{ Private declarations }
public
select_flag:integer;
procedure enabledAdd;
procedure cleardata;
procedure enabledfalse;
procedure AddData;
{ Public declarations }
end;
var
UserManagerF: TUserManagerF;
implementation
uses DataModule;
{$R *.dfm}
procedure TUserManagerF.AddData ;
begin
Ed_userzcm.Text :=ADQ_users.FieldByName('user_loginname').Text;
Ed_username.Text:=ADQ_users.FieldByName('user_name').Text;
Ed_password.Text:=ADQ_users.FieldByName('user_password').Text;
if ADQ_users.FieldByName('award_1').AsString='1' then
Chk_Sjcl.Checked:=true
else
Chk_Sjcl.Checked:=false;
if ADQ_users.FieldByName('award_2').AsString='1' then
Chk_Xfgl.Checked:=true
else
Chk_Xfgl.Checked:=false;
if ADQ_users.FieldByName('award_3').AsString='1' then
Chk_Cstj.Checked:=true
else
Chk_Cstj.Checked:=false;
if ADQ_users.FieldByName('award_4').AsString='1' then
Chk_Xtwf.Checked:=true
else
Chk_Xtwf.Checked:=false;
end;
procedure TUserManagerF.enabledfalse ;
begin
Ed_userzcm.Enabled :=false;
Ed_username.Enabled :=false;
Ed_password.Enabled :=false;
Chk_Sjcl.Enabled :=false;
Chk_Xfgl.Enabled :=false;
Chk_Cstj.Enabled :=false;
Chk_Xtwf.Enabled :=false;
end;
procedure TUserManagerF.cleardata ;
begin
Ed_userzcm.Text :='';
Ed_username.Text :='';
Ed_password.Text :='';
end;
procedure TUserManagerF.enabledAdd ;
begin
bitbtn_insert.Enabled :=false;
bitbtn_delete.Enabled :=false;
bitbtn_post.Enabled :=true;
bitbtn_cancel.Enabled :=true;
Ed_userzcm.Enabled :=true;
Ed_username.Enabled :=true;
Ed_password.Enabled :=true;
Chk_Sjcl.Enabled :=true;
Chk_Xfgl.Enabled :=true;
Chk_Cstj.Enabled :=true;
Chk_Xtwf.Enabled :=true;
end;
procedure TUserManagerF.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action :=cafree;
UserManagerF:=nil;
end;
procedure TUserManagerF.BitBtn2Click(Sender: TObject);
begin
close;
end;
procedure TUserManagerF.bitbtn_quitClick(Sender: TObject);
begin
close;
end;
procedure TUserManagerF.bitbtn_insertClick(Sender: TObject);
begin
select_flag:=1;
enabledAdd;
cleardata;
Ed_userzcm.SetFocus ;
end;
procedure TUserManagerF.bitbtn_deleteClick(Sender: TObject);
begin
try
if DB_module.ADOCon.InTransaction then DB_module.ADOCon.RollbackTrans ;
DB_module.ADOCon.BeginTrans;
if ADQ_users.RecordCount >0 then
begin
if (MessageBox(Handle,'确实要删除该客户吗?','警告',MB_YESNO+MB_ICONWARNING)=IDYES) then
ADQ_users.Delete;
DB_module.ADOCon.CommitTrans;
end
else
begin
MessageBox(0,'空记录不能删除!','余科华提示',MB_OK+MB_ICONWARNING);
end;
except
begin
MessageBox(0,'操作用户失败!','错误',MB_OK+MB_ICONERROR);
DB_module.ADOCon.RollbackTrans;
exit;
end;
end;
end;
procedure TUserManagerF.bitbtn_postClick(Sender: TObject);
begin
try
if Ed_userzcm.Text='' then
begin
Application.MessageBox('请填写用户注册名','余科华提示',MB_OK+MB_ICONINFORMATION);
Ed_userzcm.SetFocus ;
exit;
end;
if Ed_username.Text='' then
begin
Application.MessageBox('请填写用户姓名','余科华提示',MB_OK+MB_ICONINFORMATION);
Ed_username.SetFocus ;
exit;
end;
if Ed_password.Text='' then
begin
Application.MessageBox('请填写用户密码','余科华提示',MB_OK+MB_ICONINFORMATION);
Ed_password.SetFocus ;
exit;
end;
if DB_module.ADOCon.InTransaction then DB_module.ADOCon.RollbackTrans ;
DB_module.ADOCon.BeginTrans;
if Select_flag=1 then
begin
if ADOQry_insert.Active then
ADOQry_insert.Close;
ADOQry_insert.Parameters.ParamByName('user_loginname').Value:=Ed_userzcm.Text ;
ADOQry_insert.Parameters.ParamByName('user_name').Value:=Ed_username.Text;
ADOQry_insert.Parameters.ParamByName('user_password').Value:=Ed_password.Text;
if Chk_Sjcl.Checked then
ADOQry_insert.Parameters.ParamByName('award_1').Value:='1'
else
ADOQry_insert.Parameters.ParamByName('award_1').Value:='0';
if Chk_Xfgl.Checked then
ADOQry_insert.Parameters.ParamByName('award_2').Value:='1'
else
ADOQry_insert.Parameters.ParamByName('award_2').Value:='0';
if Chk_Cstj.Checked then
ADOQry_insert.Parameters.ParamByName('award_3').Value:='1'
else
ADOQry_insert.Parameters.ParamByName('award_3').Value:='0';
if Chk_Xtwf.Checked then
ADOQry_insert.Parameters.ParamByName('award_4').Value:='1'
else
ADOQry_insert.Parameters.ParamByName('award_4').Value:='0';
ADOQry_insert.ExecSQL;
DB_module.ADOCon.CommitTrans;
showmessage('保存成功!');
if ADQ_users.Active then
ADQ_users.Close;
ADQ_users.Open ;
end
else if select_flag=2 then
begin
if ADOQry_update.Active then
ADOQry_update.Close;
ADOQry_update.Parameters.ParamByName('user_loginname').Value:=Ed_userzcm.Text ;
ADOQry_update.Parameters.ParamByName('user_name').Value:=Ed_username.Text;
ADOQry_update.Parameters.ParamByName('user_password').Value:=Ed_password.Text;
if Chk_Sjcl.Checked then
ADOQry_update.Parameters.ParamByName('award_1').Value:='1'
else
ADOQry_update.Parameters.ParamByName('award_1').Value:='0';
if Chk_Xfgl.Checked then
ADOQry_update.Parameters.ParamByName('award_2').Value:='1'
else
ADOQry_update.Parameters.ParamByName('award_2').Value:='0';
if Chk_Cstj.Checked then
ADOQry_update.Parameters.ParamByName('award_3').Value:='1'
else
ADOQry_update.Parameters.ParamByName('award_3').Value:='0';
if Chk_Xtwf.Checked then
ADOQry_update.Parameters.ParamByName('award_4').Value:='1'
else
ADOQry_update.Parameters.ParamByName('award_4').Value:='0';
ADOQry_update.Parameters.ParamByName('olduser_id').value:=ADQ_users.FieldByName('user_id').Value ;
ADOQry_update.ExecSQL;
DB_module.ADOCon.CommitTrans;
showmessage('修改成功!');
if ADQ_users.Active then
ADQ_users.Close;
ADQ_users.Open ;
end
except
begin
MessageBox(0,'操作失败,用户可能插入了相同的客户编号!','',MB_OK+MB_ICONERROR);
DB_module.ADOCon.RollbackTrans;
exit;
end;
end;
enabledfalse ;
bitbtn_insert.Enabled:=true;
bitbtn_delete.Enabled:=true;
end;
procedure TUserManagerF.FormCreate(Sender: TObject);
begin
ADQ_users.Open ;
end;
procedure TUserManagerF.DBGd_browseDblClick(Sender: TObject);
begin
select_flag:=2;
AddData;
enabledAdd;
end;
procedure TUserManagerF.bitbtn_cancelClick(Sender: TObject);
begin
enabledfalse ;
bitbtn_insert.Enabled:=true;
bitbtn_delete.Enabled:=true;
bitbtn_post.Enabled:=false;
bitbtn_cancel.Enabled:=false;
bitbtn_post.Enabled:=false;
bitbtn_cancel.Enabled:=false;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -