📄 unit_charindex.pas
字号:
unit Unit_CharIndex;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,IniFiles;
type
TFrm_charIndex = class(TForm)
List_IdxId: TListBox;
Label1: TLabel;
Edit_id: TEdit;
Bt_add: TButton;
Bt_edit: TButton;
Bt_del: TButton;
Bt_Ok: TButton;
Bt_Cancel: TButton;
Bt_Close: TButton;
procedure FormShow(Sender: TObject);
procedure Bt_addClick(Sender: TObject);
procedure Bt_editClick(Sender: TObject);
procedure Bt_delClick(Sender: TObject);
procedure Bt_OkClick(Sender: TObject);
procedure Bt_CancelClick(Sender: TObject);
procedure Bt_CloseClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure List_IdxIdClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Frm_charIndex: TFrm_charIndex;
Step:String;
implementation
{$R *.dfm}
procedure TFrm_charIndex.FormShow(Sender: TObject);
var
IniFile:TIniFile;
i:integer;
begin
List_IdxId.Items.Clear;
inifile:=TIniFile.Create(ExtractFilePath(Application.ExeName)+'RegSvr.ini');
for i:=1 to IniFile.ReadInteger('NoIndexID','IDCount',0) do
begin
List_IdxId.Items.Add(IniFile.ReadString('NoIndexID','Id'+IntToStr(i),''));
end;
IniFile.Free;
Edit_id.Text:='';
Bt_add.Enabled:=True;
Bt_edit.Enabled:=True;
Bt_del.Enabled:=True;
Bt_Ok.Enabled:=False;
Bt_Cancel.Enabled:=False;
Edit_id.Enabled:=False;
Step:='';
end;
procedure TFrm_charIndex.Bt_addClick(Sender: TObject);
begin
Edit_id.Text:='';
Bt_add.Enabled:=False;
Bt_edit.Enabled:=False;
Bt_del.Enabled:=False;
Bt_Ok.Enabled:=True;
Bt_Cancel.Enabled:=True;
Edit_id.Enabled:=True;
Edit_id.SetFocus;
List_IdxId.Enabled:=False;
Step:='Add';
end;
procedure TFrm_charIndex.Bt_editClick(Sender: TObject);
begin
if List_IdxId.ItemIndex<0 then
begin
ShowMessage('必须选定一个ID。');
Exit;
end;
Bt_add.Enabled:=False;
Bt_edit.Enabled:=False;
Bt_del.Enabled:=False;
Bt_Ok.Enabled:=True;
Bt_Cancel.Enabled:=True;
Edit_id.Enabled:=True;
Edit_id.SetFocus;
List_IdxId.Enabled:=False;
Step:='Edit';
end;
procedure TFrm_charIndex.Bt_delClick(Sender: TObject);
begin
Edit_id.Text:='';
List_IdxId.DeleteSelected;
end;
procedure TFrm_charIndex.Bt_OkClick(Sender: TObject);
begin
if Step='Add' then List_IdxId.Items.Add(Edit_id.Text);
if Step='Edit' then List_IdxId.Items[List_IdxId.ItemIndex]:=Edit_id.Text;
Bt_add.Enabled:=True;
Bt_edit.Enabled:=True;
Bt_del.Enabled:=True;
Bt_Ok.Enabled:=False;
Bt_Cancel.Enabled:=False;
Edit_id.Text:='';
List_IdxId.Enabled:=True;
Edit_id.Enabled:=False;
end;
procedure TFrm_charIndex.Bt_CancelClick(Sender: TObject);
begin
Bt_add.Enabled:=True;
Bt_edit.Enabled:=True;
Bt_del.Enabled:=True;
Bt_Ok.Enabled:=False;
Bt_Cancel.Enabled:=False;
Edit_id.Enabled:=False;
Edit_id.Text:=List_IdxId.Items[List_IdxId.itemindex];
Edit_id.Text:='';
List_IdxId.Enabled:=True;
end;
procedure TFrm_charIndex.Bt_CloseClick(Sender: TObject);
begin
Close;
end;
procedure TFrm_charIndex.FormClose(Sender: TObject;
var Action: TCloseAction);
var
IniFile:TIniFile;
i:integer;
begin
inifile:=TIniFile.Create(ExtractFilePath(Application.ExeName)+'RegSvr.ini');
IniFile.WriteInteger('NoIndexID','IDCount',List_IdxId.Items.Count);
for i:=1 to List_IdxId.Items.Count do
begin
IniFile.WriteString('NoIndexID','Id'+IntToStr(i),List_IdxId.Items[i-1]);
end;
IniFile.Free;
end;
procedure TFrm_charIndex.List_IdxIdClick(Sender: TObject);
begin
Edit_id.Text:=List_IdxId.Items[List_IdxId.itemindex];
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -