📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, OBRARCompress;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
SourceFileMemo: TMemo;
RARFileEdit: TEdit;
BtnRun: TButton;
BtnClose: TButton;
ProgressBar1: TProgressBar;
Label3: TLabel;
procedure BtnRunClick(Sender: TObject);
procedure BtnCloseClick(Sender: TObject);
private
OBRARCompress1: TOBRARCompress;
procedure OBCompressing(Sender: TObject;Progress: Integer);
procedure UpdateControlsStatus(Enabled : Boolean);
public
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.BtnRunClick(Sender: TObject);
begin
//如果为TRUE的,而文件路径又太长的时候,Memo会自动换行,
//会导致下面OBRARCompress1.SourceFiles.Assign得到的文件名不正确
SourceFileMemo.WordWrap:=false;
Screen.Cursor := crHourGlass;
UpdateControlsStatus(False);
//动态创建OBRARCompress控件
OBRARCompress1:=TOBRARCompress.Create(self);
try
OBRARCompress1.OnCompressing:=OBCompressing;
OBRARCompress1.SourceFiles.Assign(SourceFileMemo.Lines);
OBRARCompress1.RARFileName := RARFileEdit.Text;
if OBRARCompress1.Compress then
ShowMessage('压缩成功啦 !')
else
ShowMessage('压缩失败啦 !');
finally
OBRARCompress1.Free;
UpdateControlsStatus(True);
Screen.Cursor := crDefault;
end;
end;
procedure TForm1.BtnCloseClick(Sender: TObject);
begin
Close;
end;
procedure TForm1.OBCompressing(Sender: TObject;Progress: Integer);
begin
ProgressBar1.Position := Progress;
Application.ProcessMessages;
end;
procedure TForm1.UpdateControlsStatus(Enabled: Boolean);
begin
RARFileEdit.Enabled := Enabled;
SourceFileMemo.Enabled := Enabled;
BtnRun.Enabled := Enabled;
BtnClose.Enabled := Enabled;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -