Как я могу показать только определенные расширения файлов в диалоге открытого файла?

Когда я открываю папку с помощью OpenDialog, как я могу отфильтровать ее, чтобы пользователи могли просматривать только определенные файлы (например, Stringgrid, *.sg), а файлы с любым другим расширением не отображаются в диалоговом окне?

2 ответа

Установить OpenDialog.Filter свойство фильтра файла, который вы хотите.

Вы можете сделать это в Инспекторе объектов:

  • Нажмите в Filter свойства, и вы увидите маленькую кнопку с правой стороны ...,
  • Нажмите на это, и вы увидите диалоговое окно.

С левой стороны находится описание файла (например, Excel files (*.xls)). Правая сторона - это фильтр, который вы хотите использовать, как в *.xls,

Диалог фильтра OpenDialog

Вы также можете установить его в коде перед отображением вашего диалога:

OpenDialog1.Filter := 'Excel files (*.xls)|*.xls';

Конечно, замените материал Excel любым описанием и маской, которую вы хотите использовать.

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

OnIncludeItem Событие используется для выборочного разрешения / запрета отдельных файлов / папок в списке в диалоге.

Другие вопросы по тегам