unit1.pas

来自「File Compression/Decompression Example U」· PAS 代码 · 共 97 行

PAS
97
字号
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, XPMan, StdCtrls,UntNtCompress, Menus, ComCtrls, ImgList,
  PngImageList;

type
  TForm1 = class(TForm)
    OD1: TOpenDialog;
    GroupBox1: TGroupBox;
    Button1: TButton;
    Edit1: TEdit;
    XPManifest1: TXPManifest;
    Button2: TButton;
    GroupBox2: TGroupBox;
    Button3: TButton;
    Edit2: TEdit;
    Button4: TButton;
    PopupEmpty: TPopupMenu;
    ListViewLog: TListView;
    PngImageList1: TPngImageList;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure AddLog(Text:String);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.AddLog(Text:String);
var
Item:TListItem;
Begin
Item := ListViewLog.Items.Add;
Item.ImageIndex := 0;
item.Caption := UpperCase(TimeToStr(Time));
Item.SubItems.Add(Copy(Text,1,Pos('|',Text)-1));
Delete(Text,1,Pos('|',Text));
Item.SubItems.Add(Text);
End;

procedure TForm1.Button2Click(Sender: TObject);
begin
Od1.InitialDir := ParamStr(0);
OD1.Filter := 'Any File|*.*';
if OD1.Execute Then
Begin
 Edit1.Text := OD1.FileName;
 Button1.Enabled := True;
End;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
AddLog(ExtractFileName(Edit1.Text) + '|Compressing File...');
if CompressFile(Edit1.Text,Edit1.Text+ '.PRCF',2) Then AddLog(ExtractFileName(Edit1.Text) + '|File Compressed')
Else AddLog(ExtractFileName(Edit1.Text) + '|Error Compressing File !');
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
Od1.InitialDir := ParamStr(0);
OD1.Filter := 'Project RAT Compressed Files|*.PRCF*;|Any File|*.*';
OD1.DefaultExt := '*.PCRF';
if OD1.Execute Then
Begin
 Edit2.Text := OD1.FileName;
 Button3.Enabled := True;
End;
end;

procedure TForm1.Button3Click(Sender: TObject);
var
Temp:String;
begin
Temp := Edit2.Text;
StringReplace(Temp,'.PRCF','',[rfReplaceAll]);
AddLog(ExtractFileName(Temp) + '|Decompressing File...');
if DecompressFile(Edit2.Text,Temp,2) Then AddLog(ExtractFileName(Temp) + '|File Decompressed')
Else AddLog(ExtractFileName(Temp) + '|Error Decompressing File');
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?