📄 unit4.pas
字号:
Unit Unit4;
Interface
{$I compiler.inc}
{$IFDEF DEL6_OR_HIGHER}
{$WARN UNIT_PLATFORM OFF}
{$ENDIF}
Uses
Windows,
Messages,
SysUtils,
Classes,
Graphics,
Controls,
Forms,
Dialogs,
StdCtrls,
Buttons,
ExtCtrls,
FileCtrl,
ztvBase,
ztvGbls,
ztvUUEncode;
Type
TfrmUUEncode = Class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
btnOK: TBitBtn;
BitBtn1: TBitBtn;
btnClose: TBitBtn;
EncodeMethod1: TRadioGroup;
btnSelectDir: TBitBtn;
Edit3: TEdit;
Label3: TLabel;
CheckBox1: TCheckBox;
Procedure FormActivate(Sender: TObject);
Procedure btnOKClick(Sender: TObject);
Procedure Edit1Change(Sender: TObject);
Procedure BitBtn1Click(Sender: TObject);
Procedure btnCloseClick(Sender: TObject);
Procedure btnSelectDirClick(Sender: TObject);
Procedure EncodeMethod1Click(Sender: TObject);
Private
{ Private declarations }
Public
{ Public declarations }
End;
Var
frmUUEncode: TfrmUUEncode;
Implementation
Uses Main;
{$R *.DFM}
//-------------------------------------------------------------
Procedure TfrmUUEncode.FormActivate(Sender: TObject);
Begin
With frmMain.ZipTV1 Do
If ArchiveFile <> '' Then
Begin
Edit1.Text := ArchiveFile;
If Edit2.Text = '' Then
Edit2.Text := ChangeFileExt(ArchiveFile, frmMain.UUEncode1.DefaultExt);
End;
End;
//-------------------------------------------------------------
Procedure TfrmUUEncode.btnOKClick(Sender: TObject);
Begin
With frmMain.UUEncode1 Do
Begin
ArchiveFile := Edit1.Text;
OutFilename := Edit2.Text;
If Edit3.Text <> '' Then
KBytesPerVolume := StrToInt(Edit3.Text)
Else
KBytesPerVolume := 0;
WriteTableToFile := CheckBox1.Checked;
Screen.Cursor := crHourGlass;
Try
// cmUUEncode & cmXXEncode (of type TCompressMethod) are defined
// in ztvBase
Case EncodeMethod1.ItemIndex Of
0: CompressMethod := cmUUEncode;
1: CompressMethod := cmXXEncode;
End;
Close();
// assign frmMain.UUEncode1 to CompressComponent variable to handle
// the cancel assignment in frmMain's TfrmMain.pbxLedClick(...) event
CompressComponent := frmMain.UUEncode1;
// activate the compress method
Compress();
Finally
Screen.Cursor := crDefault;
End;
End;
End;
//-------------------------------------------------------------
Procedure TfrmUUEncode.Edit1Change(Sender: TObject);
Begin
btnOK.Enabled := Edit1.Text <> '';
End;
//-------------------------------------------------------------
Procedure TfrmUUEncode.BitBtn1Click(Sender: TObject);
Begin
With frmMain.OpenDialog1 Do
Begin
FileName := Edit1.Text;
Title := 'Select file to encode...';
InitialDir := GetCurrentDir();
Options := [ofHideReadOnly, ofFileMustExist, ofPathMustExist];
If Execute() Then
Begin
Edit1.Text := FileName;
Edit2.Text := ChangeFileExt(FileName, '.ENC');
SetCurrentDir(ExtractFilePath(FileName));
If CompareText(Edit1.Text, Edit2.Text) = 0 Then
Begin
ShowMessage('Error: infile and outfile are the same');
Edit1.Text := '';
Edit2.Text := '';
End;
End;
End;
End;
//-------------------------------------------------------------
Procedure TfrmUUEncode.btnCloseClick(Sender: TObject);
Begin
Close;
End;
//-------------------------------------------------------------
Procedure TfrmUUEncode.btnSelectDirClick(Sender: TObject);
Var
Dir: String;
Begin
If SelectDirectory(Dir, [sdAllowCreate, sdPerformCreate, sdPrompt], -1) Then
Begin
frmMain.UUEncode1.DefaultDir := Dir;
Edit2.Text :=
AppendDirTail(Dir) +
ChangeFileExt(ExtractFilename(Edit1.Text), '.ENC');
End;
End;
//-------------------------------------------------------------
Procedure TfrmUUEncode.EncodeMethod1Click(Sender: TObject);
Begin
Case EncodeMethod1.ItemIndex Of
0: frmMain.UUEncode1.DefaultExt := '.enc';
1: frmMain.UUEncode1.DefaultExt := '.xxe';
End;
frmMain.UUEncode1.OutFilename := Edit2.Text;
End;
//-------------------------------------------------------------
End.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -