📄 unitrolepermit.pas
字号:
unit UnitRolePermit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, ToolWin, ExtCtrls, ADODB, DB, Grids, DBGrids;
type
TfrmRolePermit = class(TForm)
CoolBar1: TCoolBar;
ToolBar1: TToolBar;
tbnAdd: TToolButton;
tbnDelete: TToolButton;
tbnUpdate: TToolButton;
ToolButton4: TToolButton;
tbnPermit: TToolButton;
ToolButton6: TToolButton;
tbnExit: TToolButton;
StatusBar1: TStatusBar;
Panel1: TPanel;
GroupBox1: TGroupBox;
DBGrid: TDBGrid;
DataSource: TDataSource;
ADOQuery: TADOQuery;
ADOCmd: TADOCommand;
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure tbnExitClick(Sender: TObject);
procedure tbnAddClick(Sender: TObject);
procedure tbnDeleteClick(Sender: TObject);
procedure tbnUpdateClick(Sender: TObject);
procedure tbnPermitClick(Sender: TObject);
private
strCon:string;
procedure AddPermit(name:string;memo:string);
procedure DeletePermit(id:string);
procedure UpdatePermit(id:string;name:string;memo:string);
{ Private declarations }
public
{ Public declarations }
end;
var
frmRolePermit: TfrmRolePermit;
implementation
uses UnitMain, UnitPermitAdd, UnitPermitSet, UnitDistriPermit;
{$R *.dfm}
procedure TfrmRolePermit.AddPermit(name:string;memo:string);
var
smt:string;
begin
smt:='insert into rolelist(rolename,memo) values('''+name+''','''+memo+''')' ;
adocmd.ConnectionString:=strCon;
adocmd.CommandType:=cmdtext;
adocmd.CommandText:=smt;
adocmd.Execute;
adoquery.Requery();
end;
procedure TfrmRolePermit.DeletePermit(id:string);
var
Smt:string;
begin
Smt:='delete from rolelist where roleid='+id;
adocmd.ConnectionString:=strCon;
adocmd.CommandType:=cmdtext;
adocmd.CommandText:=Smt;
adocmd.Execute;
adoQuery.Requery();
end;
procedure TfrmRolePermit.UpdatePermit(id:string;name:string;memo:string);
var
Smt:string;
begin
Smt:='update rolelist set rolename='''+name+''',memo='''+memo+''' where roleid='+id;
Adocmd.ConnectionString:=strCon;
adoCmd.CommandType:=cmdText;
adoCmd.CommandText:=Smt;
adocmd.Execute;
adoQuery.Requery();
end;
procedure TfrmRolePermit.FormCreate(Sender: TObject);
begin
frmMain.ReadINI;
strCon:=frmMain.strCon;
end;
procedure TfrmRolePermit.FormShow(Sender: TObject);
var
Smt:string;
xx:Tcolumn;
begin
//gain the datasource
Smt:='select * from rolelist order by roleid asc';
adoQuery.Close;
adoQuery.SQL.Clear;
adoquery.SQL.add(Smt);
adoQuery.ConnectionString:=strCon;
adoQuery.Open;
//init the grid columns
//--------
xx:=dbgrid.Columns.Add ;
xx.Title.Caption:='角色编号';
xx.FieldName:=adoquery.Fields[0].DisplayName;
xx.Width:=100;
//--------
xx:=dbgrid.Columns.add;
xx.Title.Caption:='角色名称';
xx.FieldName:=adoquery.Fields[1].DisplayName;
xx.Width:=100;
//---------
xx:=dbgrid.Columns.add;
xx.Title.Caption:='备注';
xx.FieldName:=adoQuery.Fields[2].displayname;
xx.Width:=100;
//display data in the dbgrid
datasource.DataSet:=adoQuery;
dbgrid.DataSource:=datasource;
end;
procedure TfrmRolePermit.tbnExitClick(Sender: TObject);
begin
frmRolePermit.Close;
end;
procedure TfrmRolePermit.tbnAddClick(Sender: TObject);
begin
application.CreateForm(TfrmPermitAdd,frmPermitAdd);
frmPermitAdd.ShowModal;
//judge information
if frmPermitAdd.ModalResult=mrOK then
if frmPermitAdd.edtName.text='' then
showmessage('角色名称不能为空,请检查')
else
frmRolePermit.AddPermit(frmPermitAdd.edtName.Text,frmPermitAdd.edtMemo.Text)
end;
procedure TfrmRolePermit.tbnDeleteClick(Sender: TObject);
var
id:string;
begin
if adoquery.recno<>0 then
id:=adoquery.Fields[0].AsString
else
exit;
frmRolePermit.DeletePermit(id);
end;
procedure TfrmRolePermit.tbnUpdateClick(Sender: TObject);
var
id:string;
begin
if Adoquery.RecordCount<> 0 then
id:=adoQuery.Fields[0].AsString ;
application.CreateForm(TfrmPermitAdd,frmPermitAdd);
frmPermitAdd.edtName.Text:=adoQuery.Fields[1].AsString;
frmPermitAdd.edtMemo.Text:=adoQuery.Fields[2].AsString;
frmPermitAdd.ShowModal;
//whether or not to update the data
if frmPermitAdd.ModalResult=mrOk then
if frmPermitAdd.edtName.text='' then
showmessage('角色名称不能为空')
else
frmRolePermit.UpdatePermit(id,frmPermitAdd.edtName.Text,frmPermitAdd.edtMemo.text);
end;
procedure TfrmRolePermit.tbnPermitClick(Sender: TObject);
begin
application.CreateForm(TfrmDistriPermit,frmDistriPermit);
frmDistriPermit.edtuserName.text:=adoquery.fields[1].asstring;
frmDistriPermit.RoleId:=adoquery.Fields[0].AsString ;
frmDistriPermit.Show;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -