ify"> { gt; Show (); gt; bRecycler- gt; SetFocus ();
} __ fastcall TForm1 :: bCopyClick (TObject * Sender)
{(Panel, FO_COPY);
} __ fastcall TForm1 :: bRemoveClick (TObject * Sender)
{(Panel, FO_MOVE);
} __ fastcall TForm1 :: FileListLeftKeyDown (TObject * Sender, WORD amp; Key, TShiftState Shift)
{(Key)
{13: DirSel=0;=HandlerOfOpen (RootDirLeft, LEFT, DirSel) ;; 116: CopyOrRemove (Panel, FO_COPY) ;; 117: CopyOrRemove (Panel, FO_MOVE) ;; 118: FormDialogCreateDir- gt; Show () ;; 119: FormDialogDelete- gt; Show (); gt; bRecycler- gt; SetFocus () ;;
}} __ fastcall TForm1 :: FileListRightKeyDown (TObject * Sender, WORD amp; Key, Shift)
{switch (Key)
{case 13: DirSel=0;=HandlerOfOpen (RootDirRight, RIGHT, DirSel) ;; 116: CopyOrRemove (Panel, FO_COPY) ;; 117: CopyOrRemove (Panel, FO_MOVE) ;; 118: FormDialogCreateDir- gt; Show () ;; 119: FormDialogDelete- gt; Show (); gt; bRecycler- gt; SetFocus () ;;
}} __ fastcall TForm1 :: bCurrentRootDirLeftClick (TObject * Sender)
{= 2;=HandlerOfOpen (RootDirLeft, LEFT, DirSel); - gt; FileListLeft- gt; SetFocus ();
} __ fastcall TForm1 :: bCurrentRootDirRightClick (TObject * Sender)
{= 2;=HandlerOfOpen (RootDirRight, RIGHT, DirSel); - gt; FileListRight- gt; SetFocus ();
}. cpp
# pragma hdrstop
# include Unit1.h
# include Unit3.h
# include lt; winbase.h gt;
# include lt; _str.h gt;
# include lt; stdlib.h gt;
# include lt; system.hpp gt;
# include lt; shellapi.h gt;
# include lt; winnt.h gt;
# include lt; deque.h gt;
# include lt; set.h gt;
# pragma package (smart_init) DirSel=0;//Ознака здійснення вибору в ListDevicesRootDirLeft, RootDirRight;//Поточна коренева діректоріяCurrentPathLeft, CurrentPathRight;//Поточний путьPanel=LEFT; _FileProperty//Структура виведення
{FileAttrib [12];// Атрибути файлаCreateTime [25];// Час створення файлаAccessTime [25];// Час доступаWriteTime [25];// Час запісіFileSizeBy [21];// Розмір файлу в БFileSizeKb [18];// Розмір файлу в КБ
TCHAR FileName [MAX_PATH];// Ім'я файлу
TCHAR AlterFileName [14];// Альтернативне ім'я файлу
} FileProperty; lt; WIN32_FIND_DATA gt; DequeFindLeft;// Черга результатів пошуку lt; WIN32_FIND_DATA gt; DequeFindRight; _FIND_DATA StructFind;// Структура результатів поіскаColName=0,//Стовпці таблиці виводу=1,=2,=5,=4,=3;
//Безліч атрибутів директорії lt; unsigned long, less lt; unsigned long gt; gt; DirAttribSet; CreateDirAttribSet ()//Створення безлічі атрибутів директорії
{.insert(16);.insert(17);.insert(18);.insert(19);.insert(20);.insert(21);.insert(22);.insert(48);.insert(49);.insert(50);.insert(8208);
}
//Створення списку доступних устройствCreateListOfDevices ()
{DriveType; RootPath [4]; (char i= A raquo ;; i lt;= Z raquo ;; i ++)
{(RootPath,laquo; raquo;);[0]=i;[1]=laquo;:raquo;;[2]=laquo;laquo;;[3]=raquo; raquo;;=GetDriveType(RootPath);(DriveType)
{
case DRIVE_REMOVABLE: strcat (RootPath, laquo, 3 1 " );
Form1-gt;ListDevicesLeft-gt;Items-gt;Add(RootPath);-gt;ListDevicesRight-gt;Items-gt;Add(RootPath);;
case DRIVE_FIXED: strcat (RootPath, Жорсткий диск );
Form1-gt;ListDevicesLeft-gt;Items-gt;Add(RootPath);-gt;ListDevicesRight-gt;Items-gt;Add(RootPath);;
case DRIVE_REMOTE: strcat (RootPath, Мережевий диск );
Form1-gt;ListDevicesLeft-gt;Items-gt;Add(RootPath);-gt;ListDevicesRight-gt;Items-gt;Add(RootPath);
case DRIVE_CDROM: strcat (RootPath, CD-ROM );
Form1-gt;ListDevicesLeft-gt;Items-gt;Add(RootPath);-gt;ListDevicesRight-gt;Items-gt;Add(RootPath);;
case DRIVE_RAMDISK: strcat (RootPath, RAM-Disk );
Form1-gt;ListDevicesLeft-gt;Items-gt;Add(RootPath);-gt;ListDevicesRight-gt;Items-gt;Add(RootPath);;
}}}
//Перетворення зі структури результатів пошуку в структуру виводаStrucFindToFileProp (WIN32_FIND_DATA StructFind...