Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Р7_File_печать.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
184.32 Кб
Скачать

Компоненты категории Dialogs

Компоненты категории Dialogs позволяют создать ряд типовых диалоговых окон Windows, таких как окно выбора загружаемого файла, выбора шрифта, настройки принтера и т. д. Из компонентов категории Dialogs рассмотрим TOpenDialog - диалоговое окно выбора загружаемого файла и TSaveDialog - окно выбора каталога для сохранения файла. Задание свойств компонентов Dialogs производится в процессе конструирования, при выполнении программы компоненты становится невидимым.

Основные свойства и методы tOpenDialog и tSaveDialog

С войства и методы этих компонентов идентичны, поэтому рассматриваются вместе.

Execute: Boolean – метод - вызывает диалоговое окно загрузки или сохранения файла, при успешном выполнении возвращает true.

FileName: String – свойство - получает значение выбранного имени файла.

Filter – вызывает окно Filter Editor для задания расширение файла. В поле Filter Name указывают тип файла, а поле Filtr - расширение файла.

Title: String – свойство – определяет текст заголовка окна диалога, по умолчанию – “Открыть” или “Сохранить как”.

Обработка типизованных файлов

При обработке типизованных файлов следует учитывать:

  • тип элементов файлалюбой, кроме файлового.

  • все элементы типизованного файла должны быть одного типа.

  • чтение выполняется процедурой Read(F, список_считывания.)

  • запись выполняется процедурой Write(F, список_записи)

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

Пример 1. Запись массива в типизованный файл

Дано: динамический массив целых чисел M; задан адрес файла D:\Stud\FM.Dat,

Требуется записать массива в файл FM.Dat.

В разделе implementation описаны:

Type Mas = Array of Integerl; //тип динамического массива

Var M: Mas; //массив для записи в файл Name

F : File of Integer; //файловая переменная

………………………………………

{текст процедуры обработки события, например “Нажатие кнопки”}

Var i: Byte; //счётчик цикла

begin

AssignFile(F, ‘D:\Stud\FM.Dat’); //физический файл D:\Stud\FM.Dat cвязан с F

ReWrite (F); {Направление передачи данных – запись. Если файл уже существует, то он будет уничтожен, а на его месте создан новый. Если файла с именем D:\Stud\FM.Dat не существует, то он будет создан)

For i := 0 to High(M) do

Write(F, M[i]); // запись i-го элемента во внешний файл

CloseFile(F); //закрыть доступ к внешнему файлу

End; //конец проц. обработки события

Пример 2. Запись в файл с использованием диалога

Дано: динамический массив целых чисел M. задан адрес файла D:\Stud\FM.Dat,

Требуется записать массив в файл D:\Stud\FM.Dat .

Постановка задачи:

  • установим компонент TSaveDialog;

  • активизируем окно диалога «Сохранить как»методом SaveDialog1.Execute;

  • выбираем каталог и задаём имя файла;

  • свойству SaveDialog1.FileName будет присвоено введённое имя файла;

  • устанавливаем связь между файловой переменной F и физическим файлом, AssignFile(F, SaveDialog1.FileName).

В разделе implementation описаны:

Type Mas = Array of Integerl;

Var M: Mas; //массив для записи в файл Name

F : File of Integer; //файловая переменная

………………………………………

{текст процедуры обработки события, например “Нажатие кнопки”}

Var i: Byte; //счётчик цикла

Begin

If SaveDialog1.Execute //если открыт диалог

then begin

AssignFile(F, OpenDialog1.FileName); {устанавливает связь между F и выбранным в диалоге файлом OpenDialog1.FileName }

ReWrite (F); //направление передачи данных – запись.

end;

For i := 0 to High(M) do

Write(F, M[i]); // запись i-го элемента во внешний файл

CloseFile(F); //закрыть доступ к внешнему файлу

End; //конец проц. обработки события

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]