Вход


Главная страница >> Учебный процесс >> Конспекты >> Delphi. Библиотека визуальных компонентов VCL >> Описание компонентов VCL >> Файловая система >> Файловая система. TDriveComboBox
Переход на главную страницу

Сервер поддерживается
кафедрой информатики и вычислительной техники ГрГУ
тел. +375-(0)152-445-101
E-mail :
kadan@grsu.grodno.by


[Назад]    [Содержание ]    [Вперед]

  


Файловая система. TDriveComboBox


TObject => TPersistent => TComponent => TControl => TWinControl => TCustomComboBox => TDriveComboBox
Модуль FILECTRL
Страница Палитры компонентов System

Компонент представляет комбинированный список, содержащий информацию о имеющихся в системе устройствах. При инициализации приложения все они заносятся в этот список. Во время выполнения отображаются односимвольное имя устройства, метка в квадратных скобках и пиктограмма, соответствующая его типу (винчестер, сетевой диск, дисковод CD-ROM и т. п.):

TDriveType = (dtUnknown, dtNoDrive, dtFloppy, dtFixed, dtNetwork, dtCDROM, dtRAM) ;

К сожалению, функция, определяющая тип диска по его номеру или имени, недоступна программисту. Имеющаяся в API Windows функция GetDriveType не умеет распознавать dtCDROM и dtRAM и сообщает о них как о dtFixed.

Имя текущего диска соответствует значению свойства

property Drive: Char;

а имя с меткой (так, как это показывается в списке) ? значению свойства:

property Text;

При этом текст метки может отображаться в верхнем или нижнем регистрах, в зависимости от значения свойства:

(Pb) property TextCase: TTextCase;

TTextCase = (tcLowerCase, tcUpperCase) ;

Пиктограмму типа диска можно получить, используя свойство списка Items.Objects ? каждому устройству соответствует объект типа TBitmap.

Изменение текущего диска, как правило, должно повлечь за собой изменения в соответствующих списках каталогов и файлов. Для этого в обработчике события

(Pb) property OnChange: TNotifyEvent;

нужно предусмотреть соответствующий код, например:

procedure TForm1.DriveComboBox1Change(Sender: TObject);
begin
══════DirectoryListBox1.Drive := DriveComboBox1.Drive ;
end;

Существует и более простой путь для такого связывания. Достаточно связать компонент-список дисков с компонентом-списком каталогов, используя свойство:

(Pb) property DirList: TDirectoryListBox;

Все изменения первого будут автоматически отслеживаться вторым.



[Назад]    [Содержание ]    [Вперед]

  


Для комментария : kadan@grsu.grodno.by

  
За содержание страницы отвечает Гончарова М.Н.
©
Кафедра СПиКБ, 2002-2017