macroed.pas
来自「delphi编程控件」· PAS 代码 · 共 101 行
PAS
101 行
unit MacroEd;
(*
COPYRIGHT (c) RSD software 1997 - 98
All Rights Reserved.
*)
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons, ExtCtrls, afilter;
type
TfMacrosEditor = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
BOk: TBitBtn;
BCancel: TBitBtn;
ListBox: TListBox;
Edit: TEdit;
LText: TLabel;
LMacrosNames: TLabel;
BHelp: TBitBtn;
procedure ListBoxClick(Sender: TObject);
procedure EditExit(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormCreate(Sender: TObject);
private
Strings : TStrings;
end;
function EditDataSetMacros(AName : String; Macros : TMacros) : Boolean;
implementation
uses autostrs, audbstrs;
{$R *.DFM}
function EditDataSetMacros(AName : String; Macros : TMacros) : Boolean;
Var
AForm : TfMacrosEditor;
i : Integer;
begin
AForm := TfMacrosEditor.Create(Nil);
AForm.Strings := TStringList.Create;
AForm.Caption := LoadStr(ACDB_MACROSEDITORCAPTION) + AName;
For i := 0 to Macros.Count - 1 do begin
AForm.ListBox.Items.Add(Macros[i].Name);
AForm.Strings.Add(Macros[i].Text);
end;
if (Macros.Count = 0) then
AForm.Edit.Enabled := False
else begin
AForm.ListBox.ItemIndex := 0;
AForm.Edit.Text := AForm.Strings[0];
end;
AForm.ShowModal;
if(AForm.ModalResult = mrOK) then begin
For i := 0 to Macros.Count - 1 do
Macros[i].Text := AForm.Strings[i];
Result := True;
end else Result := False;
AForm.Strings.Free;
AForm.Free;
end;
procedure TfMacrosEditor.ListBoxClick(Sender: TObject);
begin
Edit.Text := Strings[ListBox.ItemIndex];
end;
procedure TfMacrosEditor.EditExit(Sender: TObject);
begin
if(ListBox.ItemIndex >= 0) and (ListBox.Items.Count > 0) then
Strings[ListBox.ItemIndex] := Edit.Text;
end;
procedure TfMacrosEditor.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if(Key = VK_ESCAPE) then
ModalResult := mrCancel;
end;
procedure TfMacrosEditor.FormCreate(Sender: TObject);
begin
BOK.Caption := LoadStr(ACB_OK);
BCancel.Caption := LoadStr(ACB_CANCEL);
BHelp.Caption := LoadStr(ACB_HELP);
LText.Caption := LoadStr(AEL_TEXT);
LMacrosNames.Caption := LoadStr(ACDB_MACROSNAMES);
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?