Лекция17
Стандартные диалоговые окна: назначение, свойства, события.TOpenDialog, TSaveDialog, TColorDialog, TOpenPictureDialog, TSavePictureDialogTPrinterSetupDialog, TPrinterDialog
Работа со стандартными диалоговыми окнами осуществляется в три этапа:
1. На форму помещается соответствующий компонент и осуществляется настройка его свойств. Следует обратить внимание на то, что компонент-диалог не виден в момент работы программы, видно лишь создаваемое им стандартное окно.
2. Осуществляется вызов стандартного для диалогов метода Execute, который создает и показывает настроенное окно на экране. Вызов этого метода обычно располагается внутри обработчика какого-либо события. После обращения к Execute на экране появляется соответствующее диалоговое окно.Окно диалога является модальным окном, поэтому сразу после обращения к нему дальнейшее выполнение программы приостанавливается до тех пор, пока пользователь не закроет окно.
3. Использование введенных из диалогового окна данных (имя файла, настройки принтера и т.д.) для продолжения работы программы.
|
|
3. TOpenDialog и TSaveDialog
Эти компоненты имеют идентичные свойства и различаются только внешним видом. Свойство FileName: (тип String) содержит маршрут поиска и имя выбранного файла при успешном завершении диалога программы. Для проверки наличия файла на диске глобальная функция FileExists Свойство Filter: String используется для фильтрации (отбора) файлов, показываемых в диалоговом окне. Это свойство можно устанавливать с помощью специального редактора или программно. Для доступа к редактору достаточно щелкнуть по кнопке в строке Filter окна инспектора объектов. При программном вводе фильтры задаются одной длинной строкой, в которой символы «|» служат для отделения фильтров друг от друга, а также для отделения описания фильтруемых файлов от соответствующей маски выбора. С помощью свойства DefaultExt: String[3] формируется полное имя файла, если при ручном вводе пользователь не указал расширение. В этом случае к имени файла прибавляется разделительная точка и содержимое этого свойства.
Настройка диалога может варьироваться с помощью свойства
TOpenOption = (of Readonly, ofOverwritePrompt, ofHideReadOnly,
ofNoChangeDir, ofShowHelp, ofNoValidate, ofAllowMuItiSelect,
ofExtensionDifferent, ofPathMustExist, ofFileMustExist, ofCreatePrompt, ofShareAware, ofNoReadOnlyReturn, ofNoTestFileCreate, ofNoNetworkButton, ofNoLongNames, ofOldStyleDialog, ofNoDereferenceLinks);
TOpenOptions = set of TOpenOption;
property Options: TOpenOptions;
Значенияэтогосвойстваимеютследующийсмысл:
ofReadOnly | Устанавливает переключатель “Только для чтения” |
ofOverwritePrompt | Требует согласия пользователя при записи в существующий файл |
ofHideReadOnly | Прячет переключатель “Только для чтения” |
ofNoChangeDir | Запрещает смену каталога. |
ofShowHelp | Включает в окно кнопку Help |
ofNoValidate | Запрещает автоматическую проверку правильности набираемых в имени файла символов |
ofAllowMultiSelec | Разрешает множественный выбор файлов |
ofExtensionDiffer | При завершении диалога наличие этого значения в свойстве Options говорит о том, что пользователь ввел расширение, отличающееся от умалчиваемого |
ofPathMustExist | Разрешает указывать файлы только из существующих каталогов |
ofFileMustExist | Разрешает указывать только существующие файлы. |
ofCreatePrompt | Требует подтверждения для создания несуществующего файла |
ofShareAware | Разрешает выбирать файлы, используемые другими параллельно выполняемыми программами |
ofNoReadOnlyRetur | Запрещает выбор файлов, имеющих атрибут “Только для чтения“ |
ofNoTestFileCreat | Запрещает проверку доступности сетевого или локального диска |
ofNoNetworkButton | Запрещает вставку кнопки для создания сетевого диска |
ofNoLongNames | Запрещает использование длинных имен файлов |
ofOldStyleDialog | Создает диалог в стиле Windows З.х |
|
|