Как программно добавить реквизит на обычную форму?
По теме из базы знаний
- Разработка технического задания. Что это такое, зачем оно нужно, с чего начать и как должно выглядеть?
- Как сдать экзамен 1С:Специалист по платформе?
- Как работают управляемые формы и тонкий клиент 1С – взгляд "из-под капота"
- Как читать чужой код? Часть 3. Разбор и доработка запросов
- Программное формирование элементов и реквизитов на управляемой форме
Найденные решения
(6) Что именно у вас не получилось? Вот небольшой пример добавления поля ввода на страницу:
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
ПанельСтраниц = ЭлементыФормы.ПанельСтраниц;
ПанельСтраниц.ТекущаяСтраница = ПанельСтраниц.Страницы.Дополнительно;
Надпись = ЭлементыФормы.Добавить(Тип("Надпись"), "НадписьНовоеПоле", Истина, ПанельСтраниц);
Надпись.Верх = ПанельСтраниц.Высота - 45;
Надпись.Лево = 6;
Надпись.Ширина = 64;
Надпись.Высота = 19;
Надпись.Заголовок = "Новое поле:";
Надпись.УстановитьПривязку(ГраницаЭлементаУправления.Верх, ПанельСтраниц, ГраницаЭлементаУправления.Низ);
Надпись.УстановитьПривязку(ГраницаЭлементаУправления.Низ, ПанельСтраниц, ГраницаЭлементаУправления.Низ);
НвоеПолеВвода = ЭлементыФормы.Добавить(Тип("ПолеВвода"), "НовоеПоле", Истина, ПанельСтраниц);
НвоеПолеВвода.Верх = Надпись.Верх;
НвоеПолеВвода.Лево = Надпись.Лево + Надпись.Ширина + 5;
НвоеПолеВвода.Ширина = 100;
НвоеПолеВвода.Высота = 19;
НвоеПолеВвода.УстановитьПривязку(ГраницаЭлементаУправления.Верх, ПанельСтраниц, ГраницаЭлементаУправления.Низ);
НвоеПолеВвода.УстановитьПривязку(ГраницаЭлементаУправления.Низ, ПанельСтраниц, ГраницаЭлементаУправления.Низ);
НвоеПолеВвода.УстановитьПривязку(
ГраницаЭлементаУправления.Право,
ПанельСтраниц,
ГраницаЭлементаУправления.Право,
ПанельСтраниц,
ГраницаЭлементаУправления.Лево);
НвоеПолеВвода.УстановитьДействие("ПриИзменении", Новый Действие("НвоеПолеВводаПриИзменении"));
КонецПроцедуры
Процедура НвоеПолеВводаПриИзменении(Элемент)
Сообщить(Элемент.Значение)
КонецПроцедуры
ПоказатьПрикрепленные файлы:
ВнешняяОбработка1.epf
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Реквизит на обычную форму - никак, можно кнопку добавить или действие в панель ... А реквизиты на обычных формах рисуются ручками.
А чем Вас не устраивает стандартный вариант "Играть видимостью". Добавляете ваш новый реквизит, а при открытии в зависимости от вашего условия показываете его или нет ...
А чем Вас не устраивает стандартный вариант "Играть видимостью". Добавляете ваш новый реквизит, а при открытии в зависимости от вашего условия показываете его или нет ...
(6) Что именно у вас не получилось? Вот небольшой пример добавления поля ввода на страницу:
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
ПанельСтраниц = ЭлементыФормы.ПанельСтраниц;
ПанельСтраниц.ТекущаяСтраница = ПанельСтраниц.Страницы.Дополнительно;
Надпись = ЭлементыФормы.Добавить(Тип("Надпись"), "НадписьНовоеПоле", Истина, ПанельСтраниц);
Надпись.Верх = ПанельСтраниц.Высота - 45;
Надпись.Лево = 6;
Надпись.Ширина = 64;
Надпись.Высота = 19;
Надпись.Заголовок = "Новое поле:";
Надпись.УстановитьПривязку(ГраницаЭлементаУправления.Верх, ПанельСтраниц, ГраницаЭлементаУправления.Низ);
Надпись.УстановитьПривязку(ГраницаЭлементаУправления.Низ, ПанельСтраниц, ГраницаЭлементаУправления.Низ);
НвоеПолеВвода = ЭлементыФормы.Добавить(Тип("ПолеВвода"), "НовоеПоле", Истина, ПанельСтраниц);
НвоеПолеВвода.Верх = Надпись.Верх;
НвоеПолеВвода.Лево = Надпись.Лево + Надпись.Ширина + 5;
НвоеПолеВвода.Ширина = 100;
НвоеПолеВвода.Высота = 19;
НвоеПолеВвода.УстановитьПривязку(ГраницаЭлементаУправления.Верх, ПанельСтраниц, ГраницаЭлементаУправления.Низ);
НвоеПолеВвода.УстановитьПривязку(ГраницаЭлементаУправления.Низ, ПанельСтраниц, ГраницаЭлементаУправления.Низ);
НвоеПолеВвода.УстановитьПривязку(
ГраницаЭлементаУправления.Право,
ПанельСтраниц,
ГраницаЭлементаУправления.Право,
ПанельСтраниц,
ГраницаЭлементаУправления.Лево);
НвоеПолеВвода.УстановитьДействие("ПриИзменении", Новый Действие("НвоеПолеВводаПриИзменении"));
КонецПроцедуры
Процедура НвоеПолеВводаПриИзменении(Элемент)
Сообщить(Элемент.Значение)
КонецПроцедуры
ПоказатьПрикрепленные файлы:
ВнешняяОбработка1.epf
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот