📄 adminf.pas
字号:
unit adminF;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBCtrls, StdCtrls, ExtCtrls, Grids, DBGrids, ComCtrls, ToolWin,
DB, ADODB, Buttons;
type
Tadmin = class(TForm)
DBGrid1: TDBGrid;
Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Label5: TLabel;
Edit5: TEdit;
CheckBox1: TCheckBox;
ADOTable1: TADOTable;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
GroupBox1: TGroupBox;
Label6: TLabel;
Edit6: TEdit;
Label7: TLabel;
Label8: TLabel;
Edit7: TEdit;
Label9: TLabel;
ADOQuery2: TADOQuery;
BitBtn6: TBitBtn;
Panel2: TPanel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
BitBtn5: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Edit4KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
procedure clear(); //定义清空各输入框的函数clear();
end;
var
admin: Tadmin;
implementation
{$R *.dfm}
uses mainF;
//**********清空各个输入框的函数clear();***************
procedure Tadmin.clear();
begin
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
edit6.Clear;
edit7.Clear;
checkbox1.Checked:=false;
end;
//*****************查看管理员表中的记录信息************
procedure Tadmin.BitBtn1Click(Sender: TObject);
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from 管理员表');
adoquery1.Open;
adotable1.Clone(adoquery1,ltUnspecified);
adoquery1.Close;
clear();//清除信息
end;
//****************查看已经存在多少个超级管理员和多少个普通管理员***
procedure Tadmin.BitBtn6Click(Sender: TObject);
var
recordcount1,recordcount2:string;
begin
edit6.Clear;
edit7.Clear;
adoquery1.Close;
adoquery1.SQL.Clear;
//查询存在多少超级管理员
adoquery1.SQL.Add('select * from 管理员表 where 是否超级管理员=''是''');
adoquery1.Open;
recordcount1:=inttostr(adoquery1.recordcount);
adoquery2.Close;
adoquery2.SQL.Clear;
//查询存在多少普通管理员
adoquery2.SQL.Add('select * from 管理员表 where 是否超级管理员=''否''');
adoquery2.Open;
recordcount2:=inttostr(adoquery2.recordcount);
edit6.Text:=recordcount1; //用edit6显示存在多少超级管理员
edit7.Text:=recordcount2; //edit7显示存在多少普通管理员
end;
//*********打开窗体时清空各输入框的信息*********
procedure Tadmin.FormCreate(Sender: TObject);
begin
clear();
end;
//************添加记录************
procedure Tadmin.BitBtn2Click(Sender: TObject);
var
super,cardno,name:string;
begin
//不允许添加空白记录
if (trim(edit1.Text)='')
or (trim(edit2.Text)='')
or (trim(edit3.Text)='')
or (trim(edit4.Text)='')
or (trim(edit5.Text)='') then
begin
messagedlg(' 请正确输入必要的基本信息!',mtWarning,[mbOK],0);
exit;
end;
if checkbox1.Checked=true then
super:='是'
else
super:='否';
//不允许同一卡号用于一个以上管理员
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from 管理员表 where 编号='''+trim(edit1.Text)+'''');
adoquery1.Open;
cardno:=adoquery1.fieldByName('编号').AsString;
if (cardno<>'') then
begin
messagedlg(' 已经存在此管理员编号,请重新输入新编号!',mtWarning,[mbOK],0);
edit1.SetFocus;
exit;
end;
//不允许一人多账号
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from 管理员表 where 姓名='''+trim(edit2.Text)+'''and 出生年月='''+trim(edit4.text)+'''');
adoquery1.Open;
name:=adoquery1.fieldByName('姓名').AsString;
if (name<>'') then
begin
messagedlg(' 同一人不能拥有多个账号!',mtWarning,[mbOK],0);
edit1.SetFocus;
exit;
end;
//添加记录
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('insert into 管理员表(编号,姓名,性别,出生年月,密码,是否超级管理员) values('''+trim(edit1.Text)+''','''+trim(edit2.Text)+''','''+trim(edit3.Text)+''','''+trim(edit4.Text)+''','''+trim(edit5.Text)+''','''+super+''')');
adoquery1.ExecSQL;
if checkbox1.Checked=true then
messagedlg(' 添加超级管理员成功!',mtInformation,[mbOK],0)
else
messagedlg(' 添加普通管理员成功!',mtInformation,[mbOK],0);
clear();
end;
//************删除用户输入编号的记录**********
procedure Tadmin.BitBtn3Click(Sender: TObject);
begin
if (trim(edit1.Text)='') then
begin
messagedlg(' 请正确输入管理员编号!',mtWarning,[mbOK],0);
edit1.SetFocus;
exit;
end;
adoquery1.close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('delete from 管理员表 where 编号='''+trim(edit1.Text)+'''');
adoquery1.ExecSQL;
adoquery1.Close;
messagedlg(' 删除成功! ',mtInformation,[mbOK],0);
clear();
end;
// ************修改记录 ************
procedure Tadmin.BitBtn4Click(Sender: TObject);
var
super:string;
begin
//不允许空白信息
if (trim(edit1.Text)='')
or (trim(edit2.Text)='')
or (trim(edit3.Text)='')
or (trim(edit4.Text)='')
or (trim(edit5.Text)='') then
begin
messagedlg(' 请正确输入必要的基本信息!',mtWarning,[mbOK],0);
exit;
end;
//判断是否选择设为超级管理员
if checkbox1.Checked=true then
super:='是'
else
super:='否';
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('update 管理员表 set 姓名='''+trim(edit2.Text)+''',性别='''+trim(edit3.Text)+''',出生年月='''+trim(edit4.Text)+''',密码='''+trim(edit5.text)+''',是否超级管理员='''+super+''' where 编号='''+trim(edit1.text)+'''');
adoquery1.ExecSQL;
adoquery1.Close;
messagedlg(' 修改成功! ',mtInformation,[mbOK],0);
clear();
end;
//**********退出窗口 并清空信息**********
procedure Tadmin.BitBtn5Click(Sender: TObject);
begin
clear();
close;
end;
//*******输入完编号字段后按回车跳到姓名字段输入框******
procedure Tadmin.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
edit2.SetFocus;
end;
//********输入完姓名字段后按回车跳到性别字段输入框********
procedure Tadmin.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
edit3.SetFocus;
end;
//********输入性别之后按回车跳到出生年月输入框*******
procedure Tadmin.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
edit4.SetFocus;
end;
// ********输完出生年月之后按回车跳到密码输入框*******
procedure Tadmin.Edit4KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
edit5.SetFocus;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -