Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Файловий менеджер

Реферат Файловий менеджер





RootDir, int Panel, int DirSel)

{

const AnsiString Mask = " *. * 0";

char PathChar [256];

AnsiString Path;

static AnsiString CurrentPathLeft = RootDir;

static AnsiString CurrentPathRight = RootDir;

long int Row = Form1-> FileListLeft-> Row;

AnsiString Name = Form1-> FileListLeft-> Cells [ColName] [Row];


if (Panel == LEFT)

{

if (DirSel! = 0)// Якщо змінилася коренева директорія

{

switch (DirSel)

{

case 1:// Якщо вибір в ListDevices

if (RootDir.AnsiCompare (RootDirRight) == 0)// Якщо при зміні кореневої дірректоріі

{// Користувач вибрав той же пристрій, що

CurrentPathLeft = CurrentPathRight;// в іншій панелі, то отображеется

Path = CurrentPathLeft + Mask;// папка відкрита в тій панелі

strcpy (PathChar, Path.c_str ());

ViewDirectory (PathChar, LEFT);

Form1-> LabelCurrentPathLeft-> Caption = CurrentPathLeft;

}

else// Якщо вибрано устройсва, відмінне від устройсва в другій панелі

{

CurrentPathLeft = RootDir + "";

Path = RootDir + Mask;

strcpy (PathChar, Path.c_str ());// Преобрзованіе AnsiString в char

ViewDirectory (PathChar, Panel);

Form1-> LabelCurrentPathLeft-> Caption = CurrentPathLeft;

}

break;

case 2 ://Якщо натискання на bCurrentRootDir

CurrentPathLeft = RootDir + "";

Path = RootDir + Mask;

strcpy (PathChar, Path.c_str ());// Преобрзованіе AnsiString в char

ViewDirectory (PathChar, Panel);

Form1-> LabelCurrentPathLeft-> Caption = CurrentPathLeft;

break;

}

}

else

{

if ((Form1-> FileListLeft-> Cells [ColAttrib] [Row] == "Dir 0") | |// Якщо подвійний клік по

(Form1-> FileListLeft-> Cells [ColAttrib] [Row] == "HideSysDir 0"))

if (Name == ".. 0")// Якщо перехід на один рівень вгору

{

int Pos, Len = CurrentPathLeft.Length ();

for (int i = Len-2; i> = 3; i -)

{

if (CurrentPathLeft [i] == '')

{

Pos = i;

break;

}

}

CurrentPathLeft.Delete (Pos, (Len-Pos));

Path = CurrentPathLeft + Mask;

strcpy (PathChar, Path.c_str ());// Преобрзованіе AnsiString в char

ViewDirectory (PathChar, LEFT);

Form1-> LabelCurrentPathLeft-> Caption = CurrentPathLeft;

}

else// Якщо відкриття підкаталогу

{

CurrentPathLeft + = Name;

Path = CurrentPathLeft + Mask;

CurrentPathLeft + = "";

strcpy (PathChar, Path.c_str ());// Преобрзованіе AnsiString в char

Form1-> LabelCurrentPathLeft-> Caption = CurrentPathLeft;

ViewDirectory (PathChar, LEFT);

}

else// Якщо відкриття файлу (НЕ папки)

{

if (Name! = " 0")

{

...


Назад | сторінка 16 з 21 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Якщо ваш працівник затриманий чи засуджений
  • Реферат на тему: Якщо ремонт виявився модернізацією
  • Реферат на тему: Якщо ви викликаєте швидку допомогу
  • Реферат на тему: Якщо лікарняний невірно розрахований
  • Реферат на тему: наслідки, які відбудуться, якщо всі льоди розтануть