Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Диалоговые окна открытия и сохранения файла






Шаг 23. Диалоговые окна для выбора открываемого или сохраняемого файла организуются с помощью компонентов OpenDialog и SaveDialog. Найдите их в Палитре Компонентов на странице Dialogs и поместите на форму. Первый компонент назовите OpenDialog, а второй — SaveDialog (рис. 23).

 

Характерные свойства этих компонентов кратко описаны в таблице:

Свойство Описание
DefaultExt Расширение, которое добавляется к имени файла, если пользователь его пропустил.
RIeName Начальное имя файла.
Filter Фильтр имени файла.
Fiiterlndex Номер активного фильтра.
InitialDir Начальный каталог, открываемый при первом появлении окна диалога.
Options Параметры, определяющие внешний вид и поведение окна диалога.
Title Заголовок окна диалога. Если значение свойства не указано, то заголовок будет стандартным -Open (Открыть) или Save (Сохранить), в зависимости от типа компонента.

Компоненты OpenDialog и SaveOialog очень схожи между собой, оба являются объектно-ориентированными оболочками стандартных диалоговых окон Windows: Open и Save. Например, на следующем рисунке показано окно Open (рис. 24).

Приблизительный сценарий работы с каждым из компонентов OpenDialog и SaveDialog таков. Компонент помещается на форму и конфигурируется для выбора тех или иных файлов. По команде меню Open... или Save As... у соответствующего компонента вызывается метод Execute. Метод Execute выполняет диалог и возвращает значение True, если пользователь выбрал файл. Полный маршрут к файлу запоминается в значении свойства FileName. Ход дальнейших действий зависит от прикладной задачи и, как правило, включает или чтение, или запись файла, в зависимости от обрабатываемой команды меню.

Придерживаясь написанного сценария, приспособим компоненты OpenDialog и SaveDialog для выбора графических файлов с расширениями BMP, ICO, EMF и WMF. Чтобы пользователь мог просматривать файлы выборочно, т.е. какого-то одного типа, в диалоговых блоках имеется набор фильтров, оформленный в виде выпадающего списка Files oftype (см. рис. выше). Исходные данные для этого списка устанавливаются в свойстве Filter. Номер активного в данный момент фильтра записывается в свойстве Filterlndex.

Шаг 24. Приступим к формированию фильтров. Активизируйте на форме компонент OpenDialog и в Инспекторе Объектов сделайте двойной щелчок мыши на значении свойства Filter (рис. 25):

Шаг 25. В результате на экране появится Редактор Фильтра (см. рис. ниже). Он представляет собой список с двумя колонками. В левой колонке вводится текст, отображаемый в выпадающем списке Files of type. В правой колонке через точку с запятой записываются маски, на основании которых выполняется фильтрация файлов в окне диалога. Для того чтобы предоставить пользователю максимальное удобство при выборе графических файлов, установите в компоненте OpenDialog фильтры, показанные на рис. 26.

Шаг 26. Действуя аналогично, установите фильтр в компоненте SaveDialog, как показано на рис. 27.

Компоненты OpenDialog и SaveDialog имеют большое количество булевских параметров, организованных в виде флагов составного свойства Options. Эти параметры влияют на то, как окно диалога выглядит и работает. По умолчанию все параметры имеют значение False. Результат установки параметров в значение True прокомментирован в таблице:

Параметр Описание
ofAllowMultiSelect Если равно True, то пользователь может выделить сразу несколько файлов.
ofCreatePrompt Если равно True и пользователь вводит имя несуществующего у файла, то пользователю задается вопрос, желает ли он создать новый файл с таким именем.
ofExtensionDifferent Этот параметр устанавливается после завершения диалога, если расширение в имени файла отличается от начального расширения.
ofFileMustExist Если равно True, то пользователь не сможет ввести имя несуществующего файла.
ofHideReadOnly Если равно True, то переключатель Read-only отсутствует в окне диалога.
ofNoChangeDir Если равно True, то пользователь не сможет сменить каталог в окне диалога.
ofNoDereferenceUnks Если равно True, то ярлыки к каталогам трактуются как обычные файлы. В противном случае они трактуются как каталоги.
ofNolongNames Если равно True, то длинные имена файлов запрещены.
ofNoNetworkButton Если равно True, то кнопка Network отсутствует в окне диалога. Этот параметр работает только в паре с параметром ofOldStyleDialog.
ofNoReadOnlyRetum Если равно True, то пользователь не сможет ввести файл с атрибутом read-only (только для чтения).
ofNoTestRleCreate Если равно True, то проверка на возможность записи в каталог не выполняется.
ofNoValidate Если равно True, то пользователь может вводить в имени файла любые символы, даже недопустимые.
ofOldStyleDialog Если равно True, то окно диалога отображается в старом стиле Windows 3. 1.
ofOverwritePrompt Если равно True, то пользователю выдается предупреждение при попытке сохранить файл с именем, которое уже существует.
ofReadOnly Если равно True, то переключатель Read-only в окне диалога включен.
ofPathMustExist Если равно True, то пользователь не сможет ввести для файла несуществующий маршрут.
ofShareAware Если равно True, то ошибки одновременного доступа к файлу со стороны нескольких приложений игнорируются.
ofShowHelp Если равно True, то в окне диалога присутствует кнопка Help.

Шаг 27. В нашем простом примере ограничимся тем, что установим в обоих компонентах OpenDialog и SaveDialog параметр ofHideReadOnly, а в компоненте SaveDialog — еще и параметр ofOverwritePrompt.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.