📄 cf_czy.pas
字号:
unit cf_czy;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, Grids, DBGrids, StdCtrls, Buttons, ExtCtrls, ComCtrls,
ToolWin, ImgList;
type
Tcfra_czy = class(TFrame)
DBGrid1: TDBGrid;
GroupBox1: TGroupBox;
DataSource1: TDataSource;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
ComboBox1: TComboBox;
GroupBox2: TGroupBox;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
Panel1: TPanel;
Label4: TLabel;
ToolBar1: TToolBar;
TButton1: TToolButton;
TButton2: TToolButton;
TButton3: TToolButton;
TButton4: TToolButton;
ImageList1: TImageList;
procedure DataSource1DataChange(Sender: TObject; Field: TField);
procedure DBGrid1Enter(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure TButton3Click(Sender: TObject);
procedure TButton1Click(Sender: TObject);
procedure TButton4Click(Sender: TObject);
procedure TButton2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
cfra_czy: Tcfra_czy;
mes:string;//提示文字
implementation
uses datam;
{$R *.dfm}
procedure Tcfra_czy.DataSource1DataChange(Sender: TObject; Field: TField);
begin
edit1.Text:=dm.ADO_user.fieldbyname('user_id').asstring;
edit2.text:=dm.ADO_user.fieldbyname('user_name').asstring;
Combobox1.Text:=dm.ADO_user.fieldbyname('user_type').AsString;
checkbox1.Checked:=dm.ADO_user.fieldbyname('is_all').asBoolean;
checkbox2.Checked:=dm.ADO_user.fieldbyname('is_product').asBoolean;
checkbox3.Checked:=dm.ADO_user.fieldbyname('is_sell').asBoolean;
end;
procedure Tcfra_czy.DBGrid1Enter(Sender: TObject);
begin
TButton1.Enabled:=true;
TButton2.Enabled:=true;
TButton4.Enabled:=true;
TButton3.Enabled:=false;
edit1.Enabled:=false;
edit2.enabled:=false;
Combobox1.Enabled:=false;
edit1.Text:=dm.ADO_user.fieldbyname('user_id').asstring;
edit2.text:=dm.ADO_user.fieldbyname('user_name').asstring;
Combobox1.text:=dm.ADO_user.fieldbyname('user_type').asstring;
end;
procedure Tcfra_czy.ComboBox1Change(Sender: TObject);
begin
if Combobox1.Text='销售员' then
begin
checkbox3.Enabled:=true;
checkbox3.Checked:=true;
checkbox1.Enabled:=false;
checkbox1.Checked:=false;
checkbox2.Enabled:=false;
checkbox2.Checked:=false;
end;
if Combobox1.Text='管理员' then
begin
checkbox1.Enabled:=false;
checkbox1.Checked:=false;
checkbox3.Enabled:=true;
checkbox3.Checked:=true;
checkbox2.Checked:=true;
checkbox2.Enabled:=true;
end;
if Combobox1.Text='超级用户' then
begin
checkbox3.Enabled:=true;
checkbox2.Enabled:=true;
checkbox1.Enabled:=true;
checkbox3.Checked:=true;
checkbox2.Checked:=true;
checkbox1.Checked:=true;
end;
end;
procedure Tcfra_czy.TButton3Click(Sender: TObject);
var
bh,xm,lb:string;
all,product,sell:Boolean;
begin
if Edit1.Text='' then //判断是否输入了用户编号
begin
Application.MessageBox(PChar('用户编号不能为空,请重新录入!')
, PChar('提示'),MB_ICONEXCLAMATION);
Edit1.SetFocus();
exit;
end;
if Edit2.Text='' then //判断是否输入了用户名称
begin
Application.MessageBox(PChar('用户名称不能为空,请重新录入!')
, PChar('提示'),MB_ICONEXCLAMATION);
Edit2.SetFocus();
exit;
end;
if Combobox1.Text='' then //判断是否输入了商品类型
begin
Application.MessageBox(PChar('用户类型不能为空,请重新录入!')
, PChar('提示'),MB_ICONEXCLAMATION);
Combobox1.SetFocus();
exit;
end;
bh:=edit1.Text;
xm:=edit2.text;
lb:=Combobox1.text;
all:=Checkbox1.Checked;
product:=Checkbox2.Checked;
sell:=Checkbox3.Checked;
if TButton3.Tag=1 then
begin
try
dm.ADO_user.AppendRecord([bh,xm,NULL,lb,False,all,product,sell]);
except
edit1.SetFocus;
edit1.text:='';
edit2.Text:='';
Combobox1.Text:='';
mes:='录入错误!'+#13+#13+'注意:<编号>、<姓名>均不能为空'
+#13+' 且不可重复,请重新录入!';
application.messagebox(pchar(mes),pchar('提示'),MB_ICONEXCLAMATION);
exit;
end;
dm.ADO_user.Sort:='user_id';
edit1.text:='';
edit2.Text:='';
Combobox1.Text:='';
edit1.SetFocus();
end
else
begin
dm.ADO_user.Edit;
dm.ADO_user.fieldbyname('user_id').AsString:=bh;
dm.ADO_user.fieldbyname('user_name').AsString:=xm;
dm.ADO_user.fieldbyname('user_type').AsString:=lb;
dm.ado_user.fieldbyname('is_all').asBoolean:=all;
dm.ado_user.fieldbyname('is_product').asBoolean:=product;
dm.ado_user.fieldbyname('is_sell').asBoolean:=sell;
try
dm.ADO_user.Post;
except
mes:='录入错误!'+#13+#13+'注意:<编号>、<用户名>均不能为空'
+#13+' 且不可重复,请重新录入!';
application.messagebox(pchar(mes),pchar('提示'),MB_ICONEXCLAMATION);
dm.ADO_user.Cancel;
exit;
end;
dm.ADO_user.Sort:='user_id';
end;
TButton3.Enabled:=false;
TButton1.Enabled:=true;
TButton2.Enabled:=true;
TButton4.Enabled:=true;
checkbox1.Enabled:=false;
checkbox2.Enabled:=false;
checkbox3.Enabled:=false;
edit1.Enabled:=false;
edit2.Enabled:=false;
Combobox1.Enabled:=false;
end;
procedure Tcfra_czy.TButton1Click(Sender: TObject);
begin
TButton3.Tag:=1;
edit1.Enabled:=true;
edit2.Enabled:=true;
Combobox1.Enabled:=true;
edit1.Text:='';
edit2.text:='';
Combobox1.Text:='';
TButton1.enabled:=false;
TButton2.Enabled:=false;
TButton3.Enabled:=true;
TButton4.Enabled:=false;
edit1.SetFocus();
checkbox1.Checked:=false;
checkbox2.Checked:=false;
checkbox3.Checked:=false;
end;
procedure Tcfra_czy.TButton4Click(Sender: TObject);
begin
if dm.ADO_user.FieldByName('manager').AsBoolean=true then
begin
application.MessageBox(pchar('系统管理员,不可删除!')
,pchar('提示'),MB_ICONEXCLAMATION+mb_ok);
exit;
end;
mes:='是否要删除操作员<'+dm.ADO_user.fieldbyname('user_name').AsString
+'>';
if application.MessageBox(pchar(mes),pchar('等待确认')
,+MB_ICONQUESTION+mb_okcancel)=idok then
dm.ADO_user.Delete;
end;
procedure Tcfra_czy.TButton2Click(Sender: TObject);
begin
TButton3.Tag:=2;
TButton3.Enabled:=true;
edit1.Enabled:=true;
edit2.Enabled:=true;
Combobox1.Enabled:=true;
TButton2.Enabled:=false;
TButton1.Enabled:=false;
TButton4.Enabled:=false;
if Combobox1.Text='管理员' then
begin
CheckBox2.Enabled:=true;
CheckBox3.Enabled:=true;
end;
if Combobox1.Text='销售员' then
CheckBox3.Enabled:=true;
if Combobox1.Text='超级用户' then
begin
CheckBox1.Enabled:=true;
CheckBox2.Enabled:=true;
CheckBox3.Enabled:=true;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -