📄 userlist.~pas
字号:
unit userlist;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, Buttons, DB, DBTables;
type
TUserListForm = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Edit3: TEdit;
GroupBox2: TGroupBox;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
GroupBox3: TGroupBox;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
DBGrid1: TDBGrid;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Database1: TDatabase;
Query1: TQuery;
DataSource1: TDataSource;
Query1username: TStringField;
Query1password: TStringField;
Query1units: TStringField;
Query1right_1: TBooleanField;
Query1right_2: TBooleanField;
Query1right_3: TBooleanField;
Query1opera: TStringField;
Query1stamp: TDateTimeField;
procedure BitBtn2Click(Sender: TObject);
procedure Database1Login(Database: TDatabase; LoginParams: TStrings);
procedure FormActivate(Sender: TObject);
procedure Query1AfterScroll(DataSet: TDataSet);
procedure RadioButton1Click(Sender: TObject);
procedure RadioButton2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure initiate;
procedure LoadFromTable;
end;
var
UserListForm: TUserListForm;
implementation
uses main;
{$R *.dfm}
procedure TUserListForm.BitBtn2Click(Sender: TObject);
begin
Query1.Close;
Database1.Connected:=false;
close;
end;
procedure TUserListForm.initiate;
begin
Edit1.text:='';
Edit2.Text:='';
Edit3.Text:='';
CheckBox1.Checked:=false;
CheckBox2.Checked:=false;
CheckBox3.Checked:=false;
end;
procedure TUserListForm.Database1Login(Database: TDatabase;
LoginParams: TStrings);
begin
loginparams.Clear;
loginparams.add('user_name=administator');
loginparams.add('password=650124');
end;
procedure TUserListForm.FormActivate(Sender: TObject);
begin
dbgrid1.DataSource:=datasource1;
dbgrid1.ReadOnly:=true;
datasource1.DataSet:=query1;
query1.DatabaseName:='student';
query1.close;
query1.SQL.clear;
query1.SQL.Add('select * from operator');
database1.Connected:=true;
query1.open;
initiate;
if not query1.IsEmpty then
begin
LoadFromTable;
RadioButton3.Checked:=true;
end
else
begin
RadioButton1.Checked:=true;
RadioButton2.Enabled:=false;
RadioButton3.Enabled:=false;
end;
Query1Username.DisplayLabel:='用户名';
Query1Password.DisplayLabel:='密码';
Query1Units.DisplayLabel:='所在单位';
Query1Right_1.DisplayLabel:='管理权';
Query1Right_2.DisplayLabel:='操作权';
Query1Right_3.DisplayLabel:='查询权';
Query1Opera.DisplayLabel:='操作员';
Query1Stamp.DisplayLabel:='最后修改时间';
end;
procedure TUserListForm.LoadFromTable;
begin
Edit1.text:=Query1.FieldByName('username').AsString;
Edit2.text:=Query1.FieldByName('password').AsString;
Edit3.text:=Query1.FieldByName('units').AsString;
CheckBox1.Checked:=Query1.FieldByName('Right_1').AsBoolean;
CheckBox2.Checked:=Query1.FieldByName('Right_2').AsBoolean;
CheckBox3.Checked:=Query1.FieldByName('Right_3').AsBoolean;
end;
procedure TUserListForm.Query1AfterScroll(DataSet: TDataSet);
begin
LoadFromTable;
end;
procedure TUserListForm.RadioButton1Click(Sender: TObject);
begin
initiate;
edit1.Enabled:=true;
edit1.SetFocus;
end;
procedure TUserListForm.RadioButton2Click(Sender: TObject);
begin
LoadFromTable;
edit1.enabled:=false;
end;
procedure TUserListForm.BitBtn1Click(Sender: TObject);
begin
query1.close;
if radioButton1.Checked then
begin
query1.SQL.clear;
query1.sql.Add('insert into operator values(:s0,:s1,:s2,:s3,:s4,:s5,:s6,:s7)');
query1.Params.clear;
query1.Params.CreateParam(ftstring,'s0',ptinput);
query1.Params[0].Value:=edit1.text;
query1.Params.CreateParam(ftstring,'s1',ptinput);
query1.Params[1].Value:=edit2.text;
query1.Params.CreateParam(ftstring,'s2',ptinput);
query1.Params[2].Value:=edit3.text;
query1.Params.CreateParam(ftboolean,'s3',ptinput);
query1.Params[3].Value:=CheckBox1.checked;
query1.Params.CreateParam(ftboolean,'s4',ptinput);
query1.Params[4].Value:=CheckBox2.checked;
query1.Params.CreateParam(ftboolean,'s5',ptinput);
query1.Params[5].Value:=CheckBox3.checked;
query1.Params.CreateParam(ftstring,'s6',ptinput);
query1.Params[6].Value:=username;
query1.Params.CreateParam(ftdatetime,'s7',ptinput);
query1.Params[7].Value:=date();
end
else if RadioButton2.Checked then
begin
query1.SQL.clear;
query1.sql.Add('delete from operator where username=:s0');
query1.Params.clear;
query1.Params.CreateParam(ftstring,'s0',ptinput);
query1.Params[0].Value:=edit1.text;
end
else
begin
query1.SQL.clear;
query1.SQL.Add('update operator set password=:s0,units=:s1,right_1=:s2,right_2=:s3,right_3=:s4,opera=:s5,stamp=:s6 where username=:s7');
query1.Params.clear;
query1.Params.CreateParam(ftstring,'s0',ptinput);
query1.Params[0].Value:=edit2.text;
query1.Params.CreateParam(ftstring,'s1',ptinput);
query1.Params[1].Value:=edit3.text;
query1.Params.CreateParam(ftboolean,'s2',ptinput);
query1.Params[2].Value:=CheckBox1.checked;
query1.Params.CreateParam(ftboolean,'s3',ptinput);
query1.Params[3].Value:=CheckBox2.checked;
query1.Params.CreateParam(ftboolean,'s4',ptinput);
query1.Params[4].Value:=CheckBox3.checked;
query1.Params.CreateParam(ftstring,'s5',ptinput);
query1.Params[5].Value:=username;
query1.Params.CreateParam(ftdatetime,'s6',ptinput);
query1.Params[6].Value:=date();
query1.Params.CreateParam(ftstring,'s7',ptinput);
query1.Params[7].Value:=edit1.text;
end;
query1.Prepare;
query1.ExecSQL;
query1.close;
query1.SQL.Clear;
query1.sql.add('select * from operator');
query1.Params.clear;
query1.Open;
if not query1.IsEmpty then
begin
Radiobutton1.Checked:=true;
Radiobutton2.Enabled:=false;
Radiobutton3.Enabled:=false;
end
else
begin
Radiobutton3.Checked:=true;
Radiobutton2.Enabled:=true;
Radiobutton3.Enabled:=true;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -