📄 setting.~pas
字号:
unit setting;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Menus;
type
TSetForm = class(TForm)
Panel1: TPanel;
ComboBox1: TComboBox;
Button1: TButton;
Button2: TButton;
Panel2: TPanel;
PopupMenu1: TPopupMenu;
Edit1: TEdit;
ListBox1: TListBox;
N1: TMenuItem;
N2: TMenuItem;
PopupMenu2: TPopupMenu;
MenuItem1: TMenuItem;
MenuItem2: TMenuItem;
PopupMenu3: TPopupMenu;
MenuItem3: TMenuItem;
MenuItem4: TMenuItem;
Edit2: TEdit;
ListBox2: TListBox;
Edit3: TEdit;
ListBox3: TListBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
CheckBox1: TCheckBox;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Button3: TButton;
procedure pm11(Sender: TObject);
procedure pm12(Sender: TObject);
procedure EditKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure pm31(Sender: TObject);
procedure pm21(Sender: TObject);
procedure pm22(Sender: TObject);
procedure pm32(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure ListBox1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
SetForm: TSetForm;
implementation
uses weihu, hlp;
{$R *.dfm}
procedure TSetForm.pm11(Sender: TObject);
begin
ListBox1.SelectAll;
end;
procedure TSetForm.pm12(Sender: TObject);
begin
ListBox1.DeleteSelected;
end;
procedure TSetForm.pm31(Sender: TObject);
begin
ListBox3.SelectAll;
end;
procedure TSetForm.pm21(Sender: TObject);
begin
ListBox2.SelectAll;
end;
procedure TSetForm.pm22(Sender: TObject);
begin
ListBox2.DeleteSelected;
end;
procedure TSetForm.pm32(Sender: TObject);
begin
ListBox3.DeleteSelected;
end;
//添加各设置项(要删除的文件、要删除的文件夹、要运行的程序)
procedure TSetForm.EditKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if ((Sender as TEdit).Text<>'') and (key=13) then //按回车
begin
case (Sender as TEdit).Tag of
1:
begin
listbox1.Items.Add(trim(edit1.Text));
edit1.Clear;
end;
2:
begin
listbox2.Items.Add(trim(edit2.Text));
edit2.Clear;
end;
3:
begin
listbox3.Items.Add(trim(edit3.Text));
edit3.Clear;
end;
end; //case
end;//if
end;
//若设置格式化,则其它各设置项无效
procedure TSetForm.CheckBox1Click(Sender: TObject);
begin
if checkBox1.Checked then
Panel2.Enabled:=false
else
Panel2.Enabled:=true;
end;
//将各设置项写入配置文件
procedure TSetForm.Button1Click(Sender: TObject);
var
strList:Tstrings;
i:integer;
begin
strList:=Tstringlist.Create;
strList.Append(ComboBox1.Text); //盘符
if CheckBox1.Checked then strList.Append(formatDiskMark); //格式化项
for i :=0 to ListBox1.Items.Count-1 do //删除文件项
strList.Append(delFileMark+ListBox1.Items.Strings[i]);
for i :=0 to ListBox2.Items.Count-1 do //删除文件夹项
strList.Append(delDirMark+ListBox2.Items.Strings[i]);
for i :=0 to ListBox3.Items.Count-1 do //运行程序项
strList.Append(runFileMark+ListBox3.Items.Strings[i]);
strList.SaveToFile(configFile); //写入配置文件
strList.Free;
close;
end;
//从配置文件中读出各设置项并显示
procedure TSetForm.FormShow(Sender: TObject);
var
strList:Tstrings;
len:integer;
i:integer;
begin
if not FileExists(exePath+configFile) then exit;
strList:=Tstringlist.Create;
strlist.LoadFromFile(exePath+configFile);
if strlist.Count<=1 then begin strList.Free; exit end;
listbox1.Clear;
listbox2.Clear;
listbox3.Clear;
ComboBox1.Text:=strlist.Strings[0][1]; //设置盘符
if strlist.Strings[1]=formatDiskMark then //设置格式化
CheckBox1.Checked:=true;
if CheckBox1.Checked then
panel2.Enabled:=false;
//设置其它各项
for i:=0 to strList.Count-1 do
begin
len:=length(delFileMark);
if copy(strlist.Strings[i],1,len)=delFileMark then
listBox1.Items.Append(copy(strlist.Strings[i],len+1,
length(strlist.Strings[i])-len));
len:=length(delDirMark);
if copy(strlist.Strings[i],1,len)=delDirMark then
listBox2.Items.Append(copy(strlist.Strings[i],len+1,
length(strlist.Strings[i])-len));
len:=length(runFileMark);
if copy(strlist.Strings[i],1,len)=runFileMark then
listBox3.Items.Append(copy(strlist.Strings[i],len+1,
length(strlist.Strings[i])-len));
end;{for}
CheckBox1.Caption:='格式化'+ComboBox1.Text+'盘';
strlist.Free;
end;
procedure TSetForm.Button2Click(Sender: TObject);
begin
close;
end;
procedure TSetForm.ComboBox1Change(Sender: TObject);
begin
CheckBox1.Caption:='格式化'+ComboBox1.Text+'盘'
end;
//使列表框中指定项的内容完整地显示出来
procedure TSetForm.ListBox1Click(Sender: TObject);
begin
case (Sender as TlistBox).Tag of
1:ListBox1.Hint:=ListBox1.Items[ListBox1.ItemIndex];
2:ListBox2.Hint:=ListBox2.Items[ListBox2.ItemIndex];
3:ListBox3.Hint:=ListBox3.Items[ListBox3.ItemIndex];
end; //case
end;
procedure TSetForm.Button3Click(Sender: TObject);
begin
HlpForm.ShowModal;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -