📄 rgtfunctionmaintainfrmmain.pas
字号:
//------------------------------------------------------------
// 作者:曾庆顺
// 模块:系统功能设置窗口
// 时间:2002.09.20
// 功能介绍:
//-----------------------------------------------------------
unit RgtFunctionMaintainFrmMain;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, StdCtrls, Buttons, TFlatButtonUnit, Grids, DBGrids, Db,
DBTables;
type
TRgtFunctionMaintainMain = class(TForm)
Panel1: TPanel;
FlatButton1: TFlatButton;
Label9: TLabel;
Label3: TLabel;
EdtFuncSerialIdQueryFrom: TEdit;
EdtFuncSerialIdQueryTo: TEdit;
Label1: TLabel;
EdtFuncNameQuery: TEdit;
GroupBox2: TGroupBox;
Label21: TLabel;
Label22: TLabel;
EdtFormCaptionQuery: TEdit;
EdtControlCaptionQuery: TEdit;
SbSysFormCtrlListQuery: TBitBtn;
Label8: TLabel;
CmbControlTypeQuery: TComboBox;
Label20: TLabel;
EdtExtraQuery: TEdit;
Panel2: TPanel;
DbgPrivFunction: TDBGrid;
Splitter2: TSplitter;
Panel3: TPanel;
Label12: TLabel;
Label15: TLabel;
EdtFuncSerialIdEditing: TEdit;
EdtFuncNameEditing: TEdit;
Label11: TLabel;
Label19: TLabel;
CmbControlTypeEditing: TComboBox;
EdtExtraEditing: TEdit;
GroupBox1: TGroupBox;
Label2: TLabel;
Label4: TLabel;
EdtFormCaptionEditing: TEdit;
EdtControlCaptionEditing: TEdit;
SbSysFormCtrlListEditing: TBitBtn;
Pal_button: TPanel;
BitBtnAdd: TFlatButton;
BitBtnAlter: TFlatButton;
BitBtnDel: TFlatButton;
BitBtnSave: TFlatButton;
BitBtnCancel: TFlatButton;
BitBtnClose: TFlatButton;
Query1: TQuery;
DataSource1: TDataSource;
Qry_Edit: TQuery;
Query2: TQuery;
UpdateSQL1: TUpdateSQL;
procedure FlatButton1Click(Sender: TObject);
procedure SbSysFormCtrlListQueryClick(Sender: TObject);
procedure SbSysFormCtrlListEditingClick(Sender: TObject);
procedure EdtFuncSerialIdQueryFromKeyPress(Sender: TObject;
var Key: Char);
procedure EdtFuncSerialIdQueryToKeyPress(Sender: TObject;
var Key: Char);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure Query1AfterScroll(DataSet: TDataSet);
procedure BitBtnCloseClick(Sender: TObject);
procedure BitBtnCancelClick(Sender: TObject);
procedure BitBtnDelClick(Sender: TObject);
procedure BitBtnAddClick(Sender: TObject);
procedure BitBtnAlterClick(Sender: TObject);
procedure BitBtnSaveClick(Sender: TObject);
private
{ Private declarations }
P_Insert,P_edit :boolean;
P_CurrentCode :string;
P_QueryFORMNAME,P_QueryCONTROLNAME,P_FORMNAME,P_CONTROLNAME :string;
procedure ProcSetButton(I_Panel:TPanel;I_flag :string);
public
{ Public declarations }
end;
var
RgtFunctionMaintainMain: TRgtFunctionMaintainMain;
implementation
uses dmmain,RgtSelectFormCtrlFrmSelect,unit_public;
{$R *.DFM}
procedure TRgtFunctionMaintainMain.FlatButton1Click(Sender: TObject);
var
P_Filter ,V_SControlType:String;
begin
screen.Cursor :=crHourGlass;
query1.close;
P_Filter :='select * from PRIVFUNCTION where 1=1 ';
if trim(EdtFuncSerialIdQueryFrom.Text) <>'' then
P_Filter:=P_Filter +' and FUNCSERIALID>='+trim(EdtFuncSerialIdQueryFrom.Text);
if trim(EdtFuncSerialIdQueryTo.Text) <>'' then
P_Filter:=P_Filter+' and FUNCSERIALID<='+trim(EdtFuncSerialIdQueryTo.Text);
if EdtFuncNameQuery.Text<>'' then
P_Filter:=P_Filter+' and FUNCNAME Like '+#39+EdtFuncNameQuery.text+#39;
if (trim(EdtFormCaptionQuery.Text)<>'') or (trim(EdtControlCaptionQuery.Text)<>'') then
begin
if (trim(EdtFormCaptionQuery.Text)<>'') and (trim(EdtControlCaptionQuery.Text)<>'') then
P_Filter:=P_Filter+' and FUNCID like '+#39+P_QueryFORMNAME
+'.'+P_QueryCONTROLNAME+#39
else
begin
if (trim(EdtFormCaptionQuery.Text)<>'') then
P_Filter:=P_Filter+' and FUNCID like '+#39+P_QueryFORMNAME+'.%'+#39;
if (trim(EdtControlCaptionQuery.Text)<>'') then
P_Filter:=P_Filter+' and FUNCID like '+#39+'%.'+P_QueryCONTROLNAME+#39;
end;
end;
if EdtExtraQuery.Text<>'' then
P_Filter:=P_Filter+' and EXTRA like '+#39+EdtExtraQuery.text+#39;
if CmbControlTypeQuery.text<>'' then
begin
If CmbControlTypeQuery.Text='看不见' then
V_SControlType:='INVISIBLE';
If CmbControlTypeQuery.Text='看得见' then
V_SControlType:='VISIBLE';
If CmbControlTypeQuery.Text='可编辑' then
V_SControlType:='ENABLED';
If CmbControlTypeQuery.Text='不可编辑' then
V_SControlType:='DISABLED';
P_Filter:=P_Filter+' and CONTROLTYPE='+#39+V_SControlType+#39;
end;
query1.sql.text :=P_Filter;
query1.open;
If query1.Bof and query1.eof then
begin
Query1.AfterScroll(nil);
MessageDlg('没有查找到记录!',mtInformation,[mbok],0);
screen.Cursor :=crDefault;
end;
screen.Cursor :=crDefault;
end;
procedure TRgtFunctionMaintainMain.SbSysFormCtrlListQueryClick(
Sender: TObject);
var
FormCtrlSelect :TRgtSelectFormCtrlSelect;
begin
FormCtrlSelect :=nil;
Try
FormCtrlSelect:=TRgtSelectFormCtrlSelect.create(self);
FormCtrlSelect.ShowModal;
P_QueryFORMNAME :=FormCtrlSelect.P_FORMNAME;
EdtFormCaptionQuery.Text :=FormCtrlSelect.P_QueryFORMNAME;
P_QueryCONTROLNAME :=FormCtrlSelect.P_CONTROLNAME;
EdtControlCaptionQuery.Text :=FormCtrlSelect.P_QueryCONTROLNAME;
Finally
FormCtrlSelect.Free;
end;
end;
procedure TRgtFunctionMaintainMain.SbSysFormCtrlListEditingClick(
Sender: TObject);
var
FormCtrlSelect :TRgtSelectFormCtrlSelect;
begin
FormCtrlSelect :=nil;
Try
FormCtrlSelect:=TRgtSelectFormCtrlSelect.create(self);
FormCtrlSelect.ShowModal;
P_FORMNAME :=FormCtrlSelect.P_FORMNAME;
EdtFormCaptionEditing.Text :=FormCtrlSelect.P_QueryFORMNAME;
P_CONTROLNAME :=FormCtrlSelect.P_CONTROLNAME;
EdtControlCaptionEditing.Text :=FormCtrlSelect.P_QueryCONTROLNAME;
Finally
FormCtrlSelect.Free;
end;
end;
procedure TRgtFunctionMaintainMain.EdtFuncSerialIdQueryFromKeyPress(
Sender: TObject; var Key: Char);
begin
If not (Key in ['0'..'9',#8,#13]) then
Key:=#0;
end;
procedure TRgtFunctionMaintainMain.EdtFuncSerialIdQueryToKeyPress(
Sender: TObject; var Key: Char);
begin
If not (Key in ['0'..'9',#8,#13]) then
Key:=#0;
end;
procedure TRgtFunctionMaintainMain.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action :=cafree;
end;
procedure TRgtFunctionMaintainMain.FormShow(Sender: TObject);
begin
Query1.close;
Query1.sql.text :=' select * from PRIVFUNCTION where FUNCSERIALID is null ';
query1.open;
Query1.AfterScroll(nil);
P_Insert :=false;
P_edit :=false;
BitBtnSave.Enabled :=false;
CmbControlTypeEditing.ItemIndex :=0;
end;
procedure TRgtFunctionMaintainMain.Query1AfterScroll(DataSet: TDataSet);
var
str,V_ControlType :string;
i :integer;
begin
if P_edit then exit;
str :=Query1.FieldByName('FUNCID').AsString;
i :=pos('.',str);
P_FORMNAME :=copy(str,1,i-1);
P_CONTROLNAME :=copy(str,i+1,length(str));
//
query2.close;
query2.sql.text :='select FORMCAPTION,CONTROLCAPTION from SYSFORMCTRLLIST'
+' where FORMNAME='+#39+P_FORMNAME+#39
+' and CONTROLNAME='+#39+P_CONTROLNAME+#39;
query2.open;
EdtFormCaptionEditing.text :=Query2.FieldByName('FORMCAPTION').AsString;
EdtControlCaptionEditing.Text :=Query2.FieldByName('CONTROLCAPTION').AsString;
If Query1.FieldByName('CONTROLTYPE').AsString='INVISIBLE' then
V_ControlType:='看不见';
If Query1.FieldByName('CONTROLTYPE').AsString='VISIBLE' then
V_ControlType:='看得见';
If Query1.FieldByName('CONTROLTYPE').AsString='ENABLED' then
V_ControlType:='可编辑';
If Query1.FieldByName('CONTROLTYPE').AsString='DISABLED' then
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -