📄 frm_manage.pas
字号:
unit frm_manage;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, ComCtrls, ExtCtrls, DB;
type
Tfrm_gl = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
GroupBox3: TGroupBox;
DBGrid1: TDBGrid;
GroupBox1: TGroupBox;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label1: TLabel;
EUserId: TEdit;
EUserPwd: TEdit;
epwd: TEdit;
Ename: TEdit;
Ecompany: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
CBLevel: TComboBox;
TabSheet2: TTabSheet;
Label7: TLabel;
GroupBox4: TGroupBox;
Label8: TLabel;
EdtUserGroup: TEdit;
Panel1: TPanel;
GroupBox5: TGroupBox;
DBGrid2: TDBGrid;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Button8: TButton;
Label9: TLabel;
Edtgroupcode: TEdit;
RadioGroup1: TRadioGroup;
DataSource1: TDataSource;
procedure FormCreate(Sender: TObject);//初始化界面组件信息
procedure Button1Click(Sender: TObject);//进入新增信息界面
procedure Button2Click(Sender: TObject); //保存修改或新增信息
procedure Button4Click(Sender: TObject); //删除选定用户
procedure DBGrid1CellClick(Column: TColumn);//界面显示选定的dbgrid详细信息
procedure Button3Click(Sender: TObject); //修改用户信息
procedure FormActivate(Sender: TObject);//页面激活时,调用界面初始化过程
procedure RadioButton1Click(Sender: TObject); //用户权限设定查询
procedure RadioButton2Click(Sender: TObject); //用户权限设定普通
procedure RadioButton3Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure TabSheet2Show(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure DBGrid2CellClick(Column: TColumn);
procedure TabSheet1Show(Sender: TObject); //用户权限设定高级
procedure usergroupshow;
private
{ Private declarations }
addusergroup,modifyusergroup:boolean;
usergroupid:integer;
usergroupname:string;
public
procedure addrecord; //新增用户存入数据库
procedure delrecord; //删除数据库中用户的记录
procedure modrecord; //修改数据库中用户信息
procedure clearcomp; //清除容器控件上显示的值
{ Public declarations }
end;
var
frm_gl: Tfrm_gl;
implementation
uses data_module,unit3; // dmserver,varfununit;
var
add,modify:boolean;
id:integer;
userlevelname:string;
{$R *.dfm}
procedure Tfrm_gl.FormCreate(Sender: TObject);
var
i:integer;
begin
modifyusergroup:=false;
addusergroup:=false;
add:=false;
modify:=false;
radiogroup1.Enabled:=false;
for i:=0 to dbgrid1.Columns.Count-1 do
dbgrid1.Columns.Delete(0);
with dm.ADOQuery8 do
begin
close;
sql.Clear;
sql.Add('select * from admin');
open;
dbgrid1.Columns.Add;
dbgrid1.Columns[0].Field:=fieldbyname('username');
dbgrid1.Columns[0].Title.Caption:='用户名';
dbgrid1.Columns[0].Width:=50;
dbgrid1.Columns.Add;
dbgrid1.Columns[1].Field:=fieldbyname('name');
dbgrid1.Columns[1].Title.Caption:='真实名';
dbgrid1.Columns[1].Width:=50;
dbgrid1.Columns.Add;
dbgrid1.Columns[2].Field:=fieldbyname('company');
dbgrid1.Columns[2].Title.Caption:='单位';
dbgrid1.Columns[2].Width:=100;
dbgrid1.Columns.Add;
dbgrid1.Columns[3].Field:=fieldbyname('user_group_id');
dbgrid1.Columns[3].Title.Caption:='用户所属组';
dbgrid1.Columns[3].Width:=50;
end;
end;
procedure Tfrm_gl.Button1Click(Sender: TObject);
var
user,name,company,userpwd:string;
i:integer;
begin
if Application.Messagebox('确定要新增一条信息!','注意!',MB_OKCANCEL+ mb_iconexclamation)=IDOK then
begin
clearcomp;
EUserId.ReadOnly:=false;
EUserPwd.ReadOnly:=false;
epwd.ReadOnly:=false;
Ename.ReadOnly:=false;
Ecompany.ReadOnly:=false;
add:=true;
modify:=false;
euserid.SetFocus;
end;
end;
//////////////////增加用户///////////////////////////////////////
procedure tfrm_gl.addrecord;
var
sqlstr:string;
begin
//////////////////判断用户是否存在/////////////////////////////////////////////
with dm.ADOQuery8 do
begin
close;
sql.Clear;
sql.Add('select * from admin where username:='''+trim(EUserId.Text)+'''');
open;
first;
while not eof do
begin
application.MessageBox('该用户名已经存在!','信息提示',mb_ok);
exit;
end;
end;
////////////////////////////////////////////////////////////////////////////////
sqlstr:='insert into admin (username,name,userpwd,company,user_group_id) '+
' values(:username,:name,:userpwd,:company,:user_group_id)';
with dm.ADOQuery8 do
begin
close;
sql.Clear;
sql.Add(sqlstr);
parameters[0].Value:=EUserId.Text;
parameters[1].value:=ename.Text;
//parameters[2].value:=trim(EUserPwd.Text);
parameters[2].value:=addCode(trim(EUserPwd.Text));
parameters[3].value:=ecompany.Text;
parameters[4].Value:=inttostr(CBLevel.ItemIndex+1);
try
execsql;
except
begin
showmessage('记录添加失败!');
exit;
end;
end;
end;
dm.ADOQuery8.Close;
with dm.ADOQuery8 do
begin
close;
sql.Clear;
sql.Add('select * from admin');
open;
end;
//dm.ADOQuery8.Open;
end;
procedure tfrm_gl.delrecord;
var
sqlstr:string;
i:integer;
begin
sqlstr:='delete from admin where id='+inttostr(id);
with dm.ADOQuery1 do
begin
close;
sql.Clear;
sql.Add(sqlstr);
try
execsql;
except
begin
showmessage('删除记录失败!');
exit;
end;
end;
end;
dm.ADOQuery8.Close;
dm.ADOQuery8.Open;
clearcomp;
{for i:=0 to self.ComponentCount-1 do //控件清空
begin
if Self.Components[i] is Tcombobox then
Tcombobox(Self.Components[i]).Text:='';
if Self.Components[i] is Tedit then
Tedit(Self.Components[i]).Text:='';
end; }
end;
procedure Tfrm_gl.Button2Click(Sender: TObject); //保存
begin
if euserid.Text='' then
begin
application.MessageBox('用户名不能为空,请输入!','注意',mb_ok);
euserid.SetFocus;
exit;
end;
if undocode(euserpwd.Text)<>undocode(epwd.Text) then
begin
application.MessageBox('两次输入的密码不一致,请重新输入!','注意',mb_ok);
euserpwd.SetFocus;
exit;
end;
if add then
addrecord;
if modify then
modrecord;
///////////////////////////////////////////////
EUserId.ReadOnly:=true;
EUserPwd.ReadOnly:=true;
epwd.ReadOnly:=true;
Ename.ReadOnly:=true;
Ecompany.ReadOnly:=true;
////////////////////////////////////////////////
end;
procedure tfrm_gl.modrecord;
var
sqlstr:string;
begin
sqlstr:='update admin set username=:user,name=:name,userpwd=:userpwd,company=:company,user_group_id=:user_group_id where id=:id';
with dm.ADOQuery1 do
begin
close;
sql.Clear;
sql.Add(sqlstr);
parameters[0].Value:=EUserId.Text;
parameters[1].value:=ename.Text;
// parameters[2].value:= trim(EUserPwd.Text);
parameters[2].value:= addCode(trim(EUserPwd.Text));
parameters[3].value:=ecompany.Text;
parameters[4].Value:=','+inttostr(CBLevel.ItemIndex)+','; //权限组20060426
parameters[5].Value:=id;
try
execsql;
except
begin
showmessage('修改记录失败!');
exit;
end;
end;
end;
dm.ADOQuery8.Close;
dm.ADOQuery8.Open;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -