Программный файл: ...\Samples\Solution\OLE\Commdlog.scx

Рассматриваемый пример иллюстрирует, как вы можете настраивать Вид, Свойства и Характеристики часто используемого Диалогового бокса Open (Открыть), который порождается внешним системным контролом "Common Dialog".

Для определения различных характеристик и функциональных возможностей рассматриваемого Диалогового Окна "Открыть" обычно используется "Аддитивный" способ определения значения свойства Flags данного контрола типа Common Dialog, где дополнительные параметры определяются в виде Суммы специальных (конкретных) числовых Значений (например: 1+2+4+8+16...). В следующей далее Таблице описаны Основные варианты используемыз Аддитивных Значений параметра (Свойства) Flags.

Значение Краткое Описание

1

Определяет наличие Переключателя Read-Only (Только-Чтение) в виде контрола CheckBox, который размещается в описываемом Диалоговом Боксе. При закрытии данного Окна этот специальный Флаг определяет соответствующий Статус открытия выбранного файла (в режиме read-only / или Нет).

2

Определяет возможное дополнительное Открытие Диалогового бокса Save As (Сохранить Как...) в том случае, когда выбранный файл уже Существует. В этом случае для пользователя создается Запрос-Подтверждение перезаписи существующего файла.

4

Скрывает Переключатель Read-Only.

8

Определяет открытие Текущего Каталога при генерации создаваемого Диалогового Бокса.

16

Определяет наличие специальной кнопки Help (Помощь) в создаваемом Диалоговом Боксе.

256

Определяет возможность использования недопустимых символов в задаваемом имени Файла.

512

Определяет наличие свойства Списка File Name (Имя Файла) - как возможность множественного выбора (нескольких файлов). Для выполнения операции "множественного выбора"  рекомендуется использовать клавишу SHIFT в комбинации с клавишами UP ARROW и DOWN ARROW (стрелки вверх и вниз). В результате выполненных действий, значение Свойства File Name возвращает Список выбранных файлов. Имена файлов в указанном списке разделяются Пробелами.

1024

Определяет, что расширение (тип) возвращаемого Имени файла может отличаться от заданного в Свойстве: DefaultExt значения. Данный флаг не устанавливается для случаев, когда DefaultExt = Null, или расширение полностью соответствует, или если расширение отсутствует совсем. Значение данного флага может быть проверено после закрытия Диалогового Бокса.

2048

Определяет, что пользователь может вводить только допустимые Имена путей доступа к файлам. Если введено недопустимое значение, то активируется Предупреждающее Сообщение.

4096

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

8192

Определяет, что система должна создать дополнительный Запрос по созданию нового файла, который еще не существует. Данный флаг применяется совместно с флагами 4096 + 2048 .

16384

Определяет, что Ошибки совместного (коллективного) доступа к выбранному файлу - Игнорируются.

32768

Определяет использование специального Шаблона Проводника ОС Windows Open A File (Открыть Файл) для рассматриваемого Диалогового Бокса.

524288

Определяет использование стандартного Шаблона Проводника  Open A File (Открыть Файл) .

1048576

Запрещает использование неверных системных Ссылок (в том числе неразрешимых ссылок). По-Умолчанию, указание   специфической Ссылки активирует соответствующие Процесы Диспетчера ОС.

1048576

Запрещает использование Ярлыков в качестве Имен Файлов (shell links). По-умолчанию, Ярлыки могут порождать соответствующие процессы Диспетчера.

2097152

Допускает использование длинных Имен Файлов.

Далее представлены фрагменты программного кода, которые представлены в событии Click объекта cmdFiles, которые уточняют характеристики и устанавливают значения дополнительных свойств Flags и Filter для внешнего контрола "Common Dialog".

Установка переключателя Read-only (Только-Чтение)

  CopyCode imageКопировать Код
IF !thisform.chkRead.Value
m.nFlags = m.nFlags + 4
ENDIF

Установка Переключателя выборки нескольких файлов (открытия нескольких файлов)

  CopyCode imageКопировать Код
IF thisform.chkMulti.Value
m.nFlags = m.nFlags + 512
ENDIF

Установка флага определения кнопки Help (Помощь)

  CopyCode imageКопировать Код
IF thisform.chkHelp.Value
m.nFlags = m.nFlags + 16
ENDIF

Определение Флага ПредОпределения Имени Файла

  CopyCode imageКопировать Код
IF thisform.chkMulti.Value
m.nFlags = m.nFlags + 4096
ENDIF

Переопределение Свойства Flags  для внешнего контрола "Common Dialog"

  CopyCode imageКопировать Код
THISFORM.oleCommDlog.Flags = m.nFlags

Определение Списка Фильтра для значения свойства Filter для Контрола "Common Dialog"

Указанное Свойство внешнего контрола Filter может быть использовано для определения групп Типов выбираемых Файлов.

  CopyCode imageКопировать Код
THISFORM.oleCommDlog.Filter = "All files" + ;
"(*.*)|*.*|Text (*.txt)|*.txt" + ;
"|Pictures(*.bmp;*.ico)|*.bmp;*.ico"

См. также