рубрики: Работа с формами | Дата: 9 апреля, 2017
Скачать обработку с примерами из статьи: professia1c_RadioButton.epf
Платформа: 8.3; Тип формы: управляемая.
Работа с переключателем в управляемых формах 1С очень похожа на работу со списком значений. Здесь также все реализуется с использованием свойства СписокВыбора
Рассмотрим это на примере. Создаем обработку с управляемой формой, добавляем реквизит ВариантСтрока, перетаскиваем его в элемены формы. Чтобы не путаться, переименуем элемент формы в Вариант. Теперь для элемента формы Вариант свойство Вид установим в значение Поле переключателя В результате получаем диалоговое окно формы показанное на рисунке:
Но если мы откроем нашу форму в режиме предприятия, то никакого переключателя мы на ней не увидим. Чтобы переключатель стал доступен в режиме предприятия нам необходимо заполнить СписокВыбора. И сделать это можно либо интерактивно в конфигураторе, либо программно.
Для интерактивного заполнения необходимо найти список выбора свойствах элемента, открыть его и ввести необходимые значения
Теперь переключатель на форме примет вид в соответствии с введенными значениями и станет доступен в режиме предприятия.
Чтобы при открытии формы у нас по умолчанию выбирался первый элемент, пропишем в модуле формы вот такой код:
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
ВариантСтрока = Элементы.Вариант.СписокВыбора[0].Значение;
КонецПроцедуры
Прогаммное заполнение списка выбора также не представляет особой трудности.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Элементы.Вариант.СписокВыбора.Добавить("ВариантОдин", "Вариант 1");
Элементы.Вариант.СписокВыбора.Добавить("ВариантДва", "Вариант 2");
Элементы.Вариант.СписокВыбора.Добавить("ВариантТри", "Вариант 3");
ВариантСтрока = Элементы.Вариант.СписокВыбора[0].Значение;
КонецПроцедуры
Для проверки добавим процедуру в которой будем выводить сообщение о выбранном варианте
&НаКлиенте
Процедура ОК(Команда)
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = ВариантСтрока;
Сообщение.Сообщить();
КонецПроцедуры
В свойствах реквизита на вкладке «представление» поле «значение заполнения».