📄 unit1.~pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons, FileCtrl, ComCtrls;
type
TForm1 = class(TForm)
DriveComboBox1: TDriveComboBox;
FileListBox1: TFileListBox;
DirectoryListBox1: TDirectoryListBox;
Edit1: TEdit;
Edit2: TEdit;
BitBtn1: TBitBtn;
StatusBar1: TStatusBar;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
Label1: TLabel;
Label2: TLabel;
SpeedButton4: TSpeedButton;
ListBox1: TListBox;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
SpeedButton7: TSpeedButton;
SpeedButton8: TSpeedButton;
Label3: TLabel;
Edit3: TEdit;
Label4: TLabel;
Label5: TLabel;
Edit4: TEdit;
Label6: TLabel;
procedure DirectoryListBox1Change(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure FileListBox1Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure FileListBox2Click(Sender: TObject);
procedure ListBox1Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure SpeedButton8Click(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure Edit2Change(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.DirectoryListBox1Change(Sender: TObject);
var defname:string;
i,j:integer;
begin
statusbar1.SimpleText:=directorylistbox1.Directory;
edit2.text:='';
i:=length(statusbar1.simpletext);
for j:=0 to (i-1) do
if statusbar1.simpletext[i-j]<>'\' then
edit2.text:=statusbar1.simpletext[i-j]+edit2.text
else
break ;
end;
procedure TForm1.FormActivate(Sender: TObject);
var defname:string;
i,j:integer;
begin
statusbar1.SimpleText:=directorylistbox1.Directory;
edit2.text:='';
i:=length(statusbar1.simpletext);
for j:=0 to (i-1) do
if statusbar1.simpletext[i-j]<>'\' then
edit2.text:=statusbar1.simpletext[i-j]+edit2.text
else
break ;
end;
procedure TForm1.FileListBox1Click(Sender: TObject);
begin
speedbutton1.Enabled:=true;
end;
procedure TForm1.SpeedButton1Click(Sender: TObject);
var i:integer;
begin
for i:=0 to (FileListBox1.Items.Count-1) do
if FileListBox1.Selected[i] then
listbox1.Items.Add(FileListBox1.Items.Strings[i]);
speedbutton1.Enabled:=False;
end;
procedure TForm1.SpeedButton3Click(Sender: TObject);
begin
listbox1.Clear;
end;
procedure TForm1.SpeedButton2Click(Sender: TObject);
var i,j:integer;
begin
j:=0;
for i:=0 to (ListBox1.Items.Count-1) do
if ListBox1.Selected[i-j] then
begin
listbox1.Items.Delete(i-j);
j:=j+1;
// except
end;
speedbutton2.Enabled:=False;
end;
procedure TForm1.SpeedButton4Click(Sender: TObject);
var i,j,k,l:integer;
extname:string;
begin
l:=0;
for i := 0 to (FileListBox1.Items.Count - 1) do
begin
extname:='';
k:=length(Filelistbox1.Items.Strings[i]);
for j:=0 to (k-1) do
if Filelistbox1.Items.Strings[i][k-j]<>'.' then
extname:=Filelistbox1.Items.Strings[i][k-j]+extname
else
break ;
if ('.'+extname)=edit3.text then
listbox1.Items.Add(FileListBox1.Items.Strings[i])
else if ('.'+extname)=('.'+'J'+'P'+'G') then
begin
if edit3.text=('.'+'j'+'p'+'g') then
listbox1.Items.Add(FileListBox1.Items.Strings[i])
else
l:=l+1;
end
else
l:=l+1;
end;
if l<>0 then
showmessage(inttostr(l)+'个文件因类型不符而未被添加,如需添加此类型,请修改“扩展名”项');
end;
procedure TForm1.FileListBox2Click(Sender: TObject);
begin
speedbutton2.Enabled:=true;
end;
procedure TForm1.ListBox1Click(Sender: TObject);
begin
speedbutton2.Enabled:=true;
if listbox1.SelCount=1 then
begin
speedbutton5.Enabled:=true;
speedbutton6.Enabled:=true;
speedbutton7.Enabled:=true;
speedbutton8.Enabled:=true;
end
else
begin
speedbutton5.Enabled:=false;
speedbutton6.Enabled:=false;
speedbutton7.Enabled:=false;
speedbutton8.Enabled:=false;
end;
end;
procedure TForm1.SpeedButton5Click(Sender: TObject);
var i:integer;
begin
for i:=0 to (ListBox1.Items.Count-1) do
if ListBox1.Selected[i] then
listbox1.Items.Move(i,0);
end;
procedure TForm1.SpeedButton8Click(Sender: TObject);
var i,intbot:integer;
begin
intbot:=listbox1.items.count-1;
for i:=0 to intbot do
if ListBox1.Selected[i] then
listbox1.Items.Move(i,intbot);
end;
procedure TForm1.SpeedButton6Click(Sender: TObject);
var i:integer;
begin
for i:=0 to (ListBox1.Items.Count-1) do
if ListBox1.Selected[i] then
begin
listbox1.Items.Move(i,i-1);
listbox1.Selected[i-1]:=true;
end;
end;
procedure TForm1.SpeedButton7Click(Sender: TObject);
var i:integer;
begin
for i:=0 to (ListBox1.Items.Count-1) do
if ListBox1.Selected[i] then
begin
listbox1.Items.Move(i,i+1);
// listbox1.Selected[i+1]:=true;
end;
end;
procedure TForm1.Edit2Change(Sender: TObject);
begin
if edit2.Text<>'' then
bitbtn1.Enabled:=true;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
var oldname,newname,strnum:string;
i,j:integer;
f : file;
begin
for i:=0 to (ListBox1.Items.Count-1) do
begin
oldname:=statusbar1.SimpleText+'\'+listbox1.Items.Strings[i];
j:=i+StrToInt(edit4.text);
if j<10 then
strnum:='00'+inttostr(j)
else
if j<100 then
strnum:='0'+inttostr(j)
else
strnum:=inttostr(j);
newname:=statusbar1.simpletext+'\'+edit2.text+' '+strnum+edit3.text;
AssignFile(f, oldname);
rename(f,newname);
end;
listbox1.Clear;
FileListBox1.Update;
//Refresh;
//Update(FileListBox1);
//TForm1.FileListBox1.Refresh;
//statusbar1.SimpleText:=directorylistbox1.Directory;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -