22 ноября, 2024

Диалог выбора файла

Как организовать в обработке ввод пути и имени файла в текстовое поле пользователем? Имеем поле в форме с типом «Строка». Чтобы пользователь мог интерактивно выбрать нужный файл, в свойствах поля, во-первых добавить кнопку выбора:

во-вторых задать обработчик выбора — в разделе «События», в строке с событием «НачалоВыбора» нажимаем на кнопку с изображением лупы, система генерирует заготовку для процедуры.

В этой процедуре вводим код:


Процедура ПолеВвода1НачалоВыбора(Элемент, СтандартнаяОбработка)
Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
Диалог.Заголовок = "Выберите файл для загрузки";
Диалог.ПолноеИмяФайла = "";
Диалог.ПредварительныйПросмотр = Ложь;
Диалог.Фильтр = "Файл таблицы Excel (*.XLS)|*.XLS";

Если Диалог.Выбрать() Тогда
Путь = Диалог.ПолноеИмяФайла;
Иначе
Путь = "";
Отказ = Истина;
КонецЕсли;
КонецПроцедуры

В моем примере сделан выбор файла таблицы Excel. Вначале вызываем конструктор нового объекта — диалога, затем его свойствами определяем нужные настройки и ограничения, например свойство «Фильтр» определяет маску имени файла. Полезным может оказаться свойство «Каталог», которым можно определить начальный путь, с которым откроется диалог. Затем используется метод «Выбрать()», который собственно и открывает пользователю окно выбора и возвращает Истина, если выбор произведен, соответственно после этого полученное полное имя записывается в переменную Путь.