: TListView, TMainMenu, TDriveComboBox, TLabel, TImageList, TStatusBar, TButton.
TForm1 FormCreate. lv1,lv2 false, ListView1 ListView2 (. 13).
ListView , , - NewList, NewList2. findfirst , , AddNewFile, AddNewFile2(. 10, 14). , (. 11, 15).
TDriveComboBox DriveComboBox1Change, DriveComboBox2Change. way, way2, , , NewList, NewList2(. 7, 18).
- . , ListView1Click, ListView2Click ListView lv1, lv2(. 29, 30). (, ) . ListView1DblClick, ListView2DblClick (. 6, 19), dbclickthirdtime, dbclickthirdtime2 (. 33, 34), dbclickfirstime, dbclickfirstime2 (. 9, 16) dbclicksecondtime, dbclicksecondtime2 (. 8, 17).
copy (. 12), mydelete (. 26), changeplace (. 40), Newdirectory (. 37), DbClick (. 23, 24, 27, 28, 35, 36, 38, 41).
: (. 21, 22)
DragAndDrop (. 43, 44, 45, 46, 47, 48, 49, 50).
FileCommander exe . filecommander.exe .
: x86, 126 , Windows 98, SVGA, 1 .
|
|
. , , . , exe . . DragAndDrop.
, . , .
1. .. 100 Delphi 5. .: 1999
2. .. Delphi 7. . .: -, 2003.
3. .. Delphi 6: . -.: , 2002
4. . Delphi 5: . -.: , 2001
5. . ., .. Delphi 6. -: , 2002
unit Main;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
FileCtrl, StdCtrls, ComCtrls, frFilePanelU, ImgList, ExtCtrls, Menus;
type
TfmDarkickCommander = class(TForm)
frFilePanelLeft: TfrFilePanel;
pnTop: TPanel;
FileListBox1: TFileListBox;
ImageList1: TImageList;
splPanelsSplitter: TSplitter;
frFilePanelRight: TfrFilePanel;
pnBottom: TPanel;
cmbxCommand: TComboBox;
lbPath: TLabel;
lbItem: TLabel;
btCopy: TButton;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormActivate(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure cmbxCommandKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure cmbxCommandEnter(Sender: TObject);
procedure btCopyClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fmDarkickCommander: TfmDarkickCommander;
implementation
Var
FirstRun:Boolean;
{$R *.DFM}
procedure TfmDarkickCommander.FormClose(Sender: TObject; var Action: TCloseAction);
begin
frFilePanelLeft.Done;
frFilePanelRight.Done;
end;
procedure TfmDarkickCommander.FormActivate(Sender: TObject);
begin
If FirstRun Then
Begin
frFilePanelRight.Init(FileListBox1, ImageList1, frFilePanelLeft.Deactivate, lbPath, lbItem);
frFilePanelLeft.Init(FileListBox1, ImageList1, frFilePanelRight.Deactivate, lbPath, lbItem);
FirstRun:=False;
End;
end;
procedure TfmDarkickCommander.FormCreate(Sender: TObject);
begin
FirstRun:=True;
end;
procedure TfmDarkickCommander.cmbxCommandKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
Var
P:Integer;
Command, Params:String;
begin
If Key<>VK_Return Then Exit;
cmbxCommand.Text:=Trim(cmbxCommand.Text);
If ssCtrl In Shift Then
Begin
cmbxCommand.Text:=' '+cmbxCommand.Text+lbItem.Caption+' ';
Exit;
End;
If cmbxCommand.Items.IndexOf(cmbxCommand.Text)<0 Then
cmbxCommand.Items.Add(cmbxCommand.Text);
|
|
P:=Pos(' ', cmbxCommand.Text);
If P<=0 Then
Begin
Exit;
End;
Command:=Copy(cmbxCommand.Text, 1, P-1);
Params:=Copy(cmbxCommand.Text, P+1, Length(cmbxCommand.Text)-P);
end;
procedure TfmDarkickCommander.cmbxCommandEnter(Sender: TObject);
begin
cmbxCommand.SelectAll;
end;
procedure TfmDarkickCommander.btCopyClick(Sender: TObject);
begin
If frFilePanelLeft.NowActive Then
frFilePanelLeft.TryCopyFile
Else
frFilePanelRight.TryCopyFile;
end;
end.
[1] . . Delphi 7. . .: -, 2003. 99.