Как я могу показать только определенные расширения файлов в диалоге открытого файла? - PullRequest
7 голосов
/ 28 ноября 2011

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

Ответы [ 2 ]

11 голосов
/ 28 ноября 2011

Установите для свойства OpenDialog.Filter требуемый фильтр файлов.

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

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

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

OpenDialog Filter Dialog

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

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

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

2 голосов
/ 28 ноября 2011

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

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

...