Flatik.ru

Перейти на главную страницу

Поиск по ключевым словам:

страница 1


Лабораторная работа №9. Работа с файлами и каталогами
Цель работы: Познакомиться с основными приёмами работы с каталогами и файлами в системе Delphi.
Основные понятия: При организации многих приложений требуется работа с файлами и ката­логами (папками). В модулях System и SysUtils находятся многочисленные процедуры, функции, типы и константы, предназначенные для работы с файловой системой.

Модуль System реализует средства вво­да/вывода, обработки строк, операций с числами и динамической памятью и ряд других.

Модуль SysUtils расширяет и дополняет возможности модуля System. В нём находятся средства, предназначенные для работы с дисками, катало­гами и файлами, датой, временем, строками и другие процедуры и функции.

Для работы с файловой системой предназначены четыре специальных ком­понента (FileListBox, DirectoryListBox, DriveComboBox, FilterComboBox), расположенные на вкладке Win3.1 Палитры компонентов.

С помощью этих компонентов можно программировать операции, связан­ные с навигацией по файловой системе. Обычно они используются совместно, но при необ­ходимости их можно применять по отдельности. На рис. 1 показаны связи между вышеперечисленными компонентами, а также Label и Edit, при их совместном использовании.

Рисунок 1 – Связи между компонентами для работы с файлами и каталогами


Компонент DriveComboBox используется для выбора дисковода. Он представляет собой комбинированный список, содержащий все уста­новленные в системе дисковые накопители. Выбранное устройство отображается в поле компонента, а соответствующая выбранному дисководу буква содержится в свойстве Drive. Аналогичное свойство имеется у компонентов DirectoryListBox и FileListBox.

Компонент DirectoryListBox служит для просмотра и перемещения по дереву каталогов. Он представляет собой прямоугольную область, в кото­рой отображается дерево каталогов с выбранным текущим каталогом.

Свойство Directory содержит строку, указывающую текущий каталог.

Для отображения текущего каталога с компонентом DirectoryListBox может быть связана надпись Label, в которой автоматически отображает каталог. При этом на длину накладывается ограничение – не более 24 символов. Если название текущего каталога имеет длину боль­ше, чем 24 символа, то часть названий каталогов заменяется многоточием.

Компонент FileListBox предназначен для просмотра списка файлов заданного каталога и выбора имени файла. Он представляет собой прямоуголь­ную область, в которой отображается список файлов заданного каталога с возможностью визуального выбора файлов.

Просматриваемый каталог задаётся свойством Directory.

Для автоматического отображения выбранного в списке файла можно ис­пользовать компонент Edit, который должен быть связан с компонентом FileListBox. Первоначально, когда выбранных файлов нет, в поле Edit отобража­ется выбранная маска, например, *. *.

При выборе пользователем файла в свойство FileName заносится полное имя выбранного файла. Это свойство доступно для чтения и записи, поэтому можно программно выбрать требуемый файл.

Управлять отображением файлов в списке можно с помощью свойств FileType и Mask. Свойство FileType указывает атрибуты файлов, содержащихся в списке, и принимает комбинации следующих зна­чений:


  • ftReadOnly (только чтение);

  • ftHidden (скрытый);

  • ftSystem (системный);

  • ftVolumeID (метка диска);

  • ftDirectory (каталог);

  • ftArchive (архивный);

  • ftNormal (обычный).

Свойство Mask содержит маску для файлов списка. По умолча­нию используется маска *.*, и в списке отображаются все файлы. При необходимости для маски можно задать другое зна­чение.

Файлы в списке могут выводиться со значками или без них, наличие или отсутствие значка задаётся свойством ShowGlyphs.



Компонент FilterComboBox осуществляет выбор маски для списка файлов. Этот компонент представляет собой комбинирован­ный список, который содержит фильтры. Фильтр состоит из текстового описания и маски. Доступ к фильтру осуществляется, через свойство Filter.

При совместном использовании компонентов FilterComboBox и FileListBox для организации связи между ними используется свойство FileList. После установки связи между этими компонентами в случае смены в компоненте FilterComboBox фильтра, а вместе с ним и маски, спи­сок файлов в компоненте FileListBox автоматически обновляется с учётом новой маски.

Работу с файлами соответствующих форматов поддерживают также такие компоненты как Memo, ListBox, Picture и Clipboard.

Работа с файлами. При работе с текстовыми файлами можно использовать объект типа TStrings, который имеет ряд методов, например:


  • Clear – очистка содержимого объекта;

  • LoadFromFile – загрузить файл, имеет параметр – полное имя файла;

  • SaveToFile – сохранить в файл, имеет параметр – полное имя файла.


Порядок выполнения работы
1. Запустите Delphi. Создайте новый проект.

2. Назовите форму MainForm с заголовком Главная. Для формы задайте:



  • размер – 600х600;

  • минимальный размер – 200х200;

  • максимальный размер – 900х900.

3. Cохраните проект в папку D:\Users\...\Lab9\... . Окно сохраните под именем MainUnit, а проект под именем Catalog.

4. На форме Главная создайте:



  • панель высотой 50, сделайте, чтобы она выравнивалась по верхнему краю, измените её цвет;

  • разделитель высотой 10, сделайте, чтобы он выравнивался по верхнему краю;

  • панель высотой 50, сделайте, чтобы она выравнивалась по нижнему краю, измените её цвет;

  • разделитель высотой 10, сделайте, чтобы он выравнивался по нижнему краю;

  • многострочный редактор, назовите его MMemo, сделайте, чтобы он занимал всю оставшуюся фору;

  • главное меню с пунктами Файл, Шрифт, О программе и Выход;

  • в меню Файл пункты Сохранить и Загрузить;

  • на первой панели по центру надпись Информация, измените размер шрифта;

  • на второй панели:

    • создайте 5 графических кнопок с заголовками Очистить, Выделить всё, Копировать, Вырезать и Вставить;

    • кнопки сделайте с рисунками;

    • для кнопок создайте подсказки: "Очистить редактор", "Выделить всё в редакторе", "Копировать в буфер", "Вырезать в буфер" и "Вставить из буфера";

    • запрограммируйте кнопки, чтобы они выполняли соответствующие действия.

5. Сделайте так, чтобы при выборе меню Выход программа закрывалось.

6. Создайте вторую форму:



  • назовите SaveForm с заголовком Сохранение файла;

  • сделайте форму размером 400х600.

7. На форме Сохранение файла создайте:

  • панель высотой 50, сделайте, чтобы она выравнивалась по нижнему краю, измените её цвет;

  • разделитель высотой 10, сделайте, чтобы он выравнивался по нижнему краю;

  • вторую панель, сделайте, чтобы она занимала всю оставшуюся фору.

8. На форме Сохранение файла на второй панели создайте:

  • надпись Устройство, рядом с ней компонент выбора дисковода (DriveComboBox);

  • надпись Путь, рядом с ней компонент для просмотра и перемещению по дереву каталога (DirectoryListBox), высотой 120;

  • надпись, свяжите её с компонентом для просмотра и перемещению по дереву каталога (см. рис. 1). Под ней компонент для просмотра списка файлов заданного каталога и выбора имени файла (FileListBox), высотой 120. Сделайте, чтобы файлы выводился со значками;

  • надпись Тип файла, рядом с ней компонент для выбора маски для списка файлов (FilterComboBox). В него добавьте фильтр для выбора текстовых файлов (с расширением txt);

  • надпись Имя файла, рядом с ней однострочный редактор, назовите его FNEdit. Сделайте, что бы в нём отображалось имя выбранного файла;

  • организуйте связи между компонентами (см. рис. 1).

9. Сделаем, чтобы изначально в устройствах был выбран папка Users на диске D. Для этого в процедуру OnShow для формы Сохранение файла введите код:
DriveComboBox1.Drive := 'D';

DirectoryListBox1.Directory := 'D:\Users';


10. На форме Сохранение файла на второй панели создайте кнопки Сохранить и Закрыть.

11. Запрограммируем кнопку Сохранить, что бы при нажатии на неё данные из многострочного редактор на форме Главная сохранялись в указный в редактор FNEdit файл. Для этого в процедуру обработки для кнопки введите код:


MainForm.MMemo.Lines.SaveToFile (Label3.Caption + '\' +

FNEdit.Text);


12. При нажатии кнопки Закрыть окно должно закрываться.

13. Создайте третью форму размером 400х600, назовите её LoadForm с заголовком Загрузка файла.

14. По аналогии с формой Сохранение файла создайте форму Загрузка файла, только вместо кнопки Сохранить создайте кнопку Загрузить, при нажатии которой выбранный файл должен загружаться в многострочный редактор на форме Главная.

15. Создайте четвёртую форму размером 400х400, назовите форму PropertForm с заголовком Параметры шрифта.

16. На форме Параметры шрифта создайте:


  • панель высотой 50, сделайте, чтобы она выравнивалась по нижнему краю, измените её цвет;

  • разделитель высотой 10, сделайте, чтобы он выравнивался по нижнему краю;

  • вторую панель, сделайте, чтобы она занимала всю оставшуюся фору.

  • на первой панели графическую кнопку с предопределённым видом Close.

17. На форме Параметры шрифта на второй панели:

  • создайте надпись Цвет шрифта, рядом комбинированный список с раскрывающим списком, содержащий название шести цветов;

  • сделайте так, чтобы шрифт многострочного редактора на форме Главная принимал выбранный цвет;

  • создайте надпись Размер шрифта, рядом счётчик SpinEdit (вкладка Samples Палитры компонентов). Для него установите:

  • минимальное значение – 6;

  • максимальное значение – 32;

  • начальное значение – 8;

  • сделайте чтобы, при изменении значения счётчика соответствующе изменялся размер шрифта многострочного редактора на форме Главная;

18. Создайте пятую форму размером 400х300, назовите форму AboutForm с заголовком О программе.

19. На форме О программе:



  • создайте фигуру (компонент Shape) в виде прямоугольника с закругленными краями, размером 320х220, измените тип линии и её цвет;

  • поверх фигуры создайте надписи, содержащие:

  • № лабораторной работы;

  • своё Ф.И.О.;

  • группу;

  • город, год.

  • измените размер, цвет и шрифт надписей;

  • создайте графическую кнопку с предопределённым видом Ok. Запрограммируйте, чтобы при нажатии кнопки форма закрывалась.

20. На форме Главная сделайте, чтобы при выборе меню:

    • Файл / Сохранить открывалась форма Сохранение файла;

    • Файл / Загрузить открывалась форма Загрузка файла;

    • Шрифт открывалась форма Параметры шрифта;

    • О программе открывалась форма О программе;

    • Выход программа закрывалась.

21. Сохраните и запустите проект на выполнение.

22. Закройте Delphi.




Лабораторная работа №9. Работа с файлами и каталогами

Цель работы: Познакомиться с основными приёмами работы с каталогами и файлами в системе Delphi

72.66kb.

12 10 2014
1 стр.


Лабораторная работа №1 Работа в Oracle Database Express Edition 1 Лабораторная работа №6

Лабораторная работа Выполнение расчетов с использованием программирования в среде Visual Basic for Applications

232.43kb.

18 12 2014
1 стр.


Лабораторная работа №2 работа с пакетными файлами (. bat) в операционной системе dos

Echo (Вывод сообщения), call (Вызов другого пакетного файла), goto (Переход по метке), if (Условие), for (Цикл), shift (Сдвиг аргументов на один влево), set

83.74kb.

08 10 2014
1 стр.


Файловая оболочка far. Работа с файлами и каталогами

Системы счисления. Позиционные и непозиционные системы счисления. Смешанные системы счисления. Перевод чисел из одной системы счисления в другую

66.71kb.

14 12 2014
1 стр.


Лабораторная работа №1 Изучение автоматической телеграфной станции ат-пс-пд лабораторная работа №2 и зучение телеграфного коммутационного сервера «Вектор-2000»

Рецензент – зам начальника Гомельской дистанции сигнализации и связи Белорусской железной дороги В. И. Прокопюк

822.36kb.

29 09 2014
3 стр.


Лабораторная работа №1 по курсу "Информационная безопасность" Лабораторная работа №1

Простейшей и в то же время наиболее надежной из всех схем шифрования является так называемая схема однократного использования (рис. 1), изобретение, которое чаще всего связывают с

118.45kb.

10 10 2014
1 стр.


Лабораторная работа №1 «Изучение аэрофотосъёмочной аппаратуры». Аэрофотографическая система и ее основные характеристики. Принципиальная схема аэросъёмочного аппарата. Основные части афа. Назначение афа

Лабораторная работа №2 «Составление технического проекта на производство аэрофотосъемочных работ»

26.07kb.

14 12 2014
1 стр.


Лабораторная работа №5 Анализ операций с ценными бумагами

Лабораторная работа №5 включает 5 заданий. Для выполнения этих заданий необходимо ознакомиться с теоретическим материалом, приведенным к данной лабораторной работе и расположенным

166.96kb.

11 09 2014
1 стр.