📄 frmpermissionmanage.pas
字号:
unit frmPermissionManage;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DBCtrls, Mask, ExtCtrls, LCDBOperatTool, DB, ADODB,
Grids, DBGrids;
type
TFormPermissionManage = class(TForm)
LCDBOperatToolMaster: TLCDBOperatTool;
DBEdtId: TDBEdit;
DBEdtName: TDBEdit;
DBMemoRemark: TDBMemo;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
DSMaster: TDataSource;
ADOTPerMaster: TADOTable;
ADOTPerSlave: TADOTable;
ADOCon: TADOConnection;
DSSlave: TDataSource;
ADOTPerSlaveMasterId: TSmallintField;
ADOTPerSlaveFunc: TWideStringField;
ADOQ: TADOQuery;
DBGrid2: TDBGrid;
GroupBox1: TGroupBox;
DBGrid1: TDBGrid;
LCDBOperatToolSlave: TLCDBOperatTool;
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure FormCreate(Sender: TObject);
procedure FormDeactivate(Sender: TObject);
procedure LCDBOperatToolSlaveModeChange(AMode: TBtnMode);
procedure LCDBOperatToolMasterClick(Btn: TToolButton;
var Continued: Boolean);
procedure LCDBOperatToolMasterModeChange(AMode: TBtnMode);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FormPermissionManage: TFormPermissionManage;
implementation
uses untConfig, untGlobal;
{$R *.dfm}
procedure TFormPermissionManage.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
Perform(WM_NEXTDLGCTL,0,0);
end;
procedure TFormPermissionManage.FormCreate(Sender: TObject);
begin
ADOCon.Close;
ADOCon.ConnectionString := GetConnectionString;
try
ADOCon.Open;
ADOTPerMaster.Open;
ADOTPerSlave.Open;
except
raise Exception.Create('数据库打开错误!');
end;
end;
procedure TFormPermissionManage.FormDeactivate(Sender: TObject);
begin
ADOCon.Close;
end;
procedure TFormPermissionManage.LCDBOperatToolSlaveModeChange(AMode: TBtnMode);
begin
if AMode = bmAdd then
begin
DSSlave.DataSet.FieldByName('masterid').AsInteger :=
DSMaster.DataSet.FieldByName('id').AsInteger;
end;
end;
procedure TFormPermissionManage.LCDBOperatToolMasterClick(Btn: TToolButton;
var Continued: Boolean);
begin
if Btn = tbDel then
begin
Continued := false;
ADOQ.Close;
ADOQ.SQL.Text := 'delete from t_PermissionSlave where masterid=:masterid';
ADOQ.Parameters.ParamByName('masterid').Value :=
DSMaster.DataSet.FieldByName('id').AsInteger;
ADOCon.BeginTrans;
try
ADOQ.ExecSQL;
DSMaster.DataSet.Open;
DSMaster.DataSet.Delete;
ADOCon.CommitTrans;
except
ADOCon.RollbackTrans;
raise;
end;
LCDBOperatToolMaster.EnabledBtn := [tbCancel, tbAdd];
end;
end;
procedure TFormPermissionManage.LCDBOperatToolMasterModeChange(AMode: TBtnMode);
begin
if (AMode = bmAdd) or (AMode = bmDel) then
LCDBOperatToolSlave.EnabledBtn := []
else
LCDBOperatToolSlave.EnabledBtn := [tbAdd, tbDel, tbEdit]
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -