Как программно добавить кнопку на форму 1С в расширении с картинкой
Для простоты обновления удобно добавлять кнопки на форму документа или справочника программно даже в расширениях 1С.
Создадим в расширении процедуру Расширение_ПриСозданииНаСервереПосле
Выберем расширение в которое нужно поместить процедуру и подтвердим добавление расширения обработчика.
Пропишем код добавления команд и соответствующих им элементов на форме, в результате выполнения кода на форме появятся две кнопки.
&НаСервере Процедура Расширение_ПриСозданииНаСервереПосле(Отказ, СтандартнаяОбработка) НоваяКоманда = ЭтаФорма.Команды.Добавить("Расширение_ПечатьЧека"); НоваяКоманда.Действие = "Расширение_ПечатьЧека"; НоваяКоманда.Заголовок = "Печать чека"; НовыйЭлемент = Элементы.Добавить("Расширение_ПечатьЧека", Тип("КнопкаФормы"),Элементы.ФормаКоманднаяПанель); НовыйЭлемент.ИмяКоманды = "Расширение_ПечатьЧека"; Элементы.Расширение_ПечатьЧека.Картинка = БиблиотекаКартинок.Расширение_Касса; Элементы.Расширение_ПечатьЧека.Отображение = ОтображениеКнопки.КартинкаИТекст; НоваяКоманда = ЭтаФорма.Команды.Добавить("Расширение_ПараметрыКассы"); НоваяКоманда.Действие = "Расширение_ПараметрыКассы"; НоваяКоманда.Заголовок = "Параметры кассы"; НовыйЭлемент = Элементы.Добавить("Расширение_ПараметрыКассы", Тип("КнопкаФормы"),Элементы.ФормаКоманднаяПанель); НовыйЭлемент.ИмяКоманды = "Расширение_ПараметрыКассы"; Элементы.Расширение_ПараметрыКассы.Картинка = БиблиотекаКартинок.Расширение_Касса; Элементы.Расширение_ПараметрыКассы.Отображение = ОтображениеКнопки.КартинкаИТекст; КонецПроцедуры
В данном примере добавляем кнопку с назначенной ей картинкой, картинку предварительно добавляем в библиотеку картинок расширения (Общие картинки), а после программно назначаем на кнопку, также меняем отображение кнопки на картинка и текст.
Так же программно можно задать определенный цвет фона кнопки:
Элементы.Расширение_ПечатьЧека.ЦветФона = Новый Цвет(255,255,0);
Далее прописываем код для динамически создаваемой кнопки на форме 1С:
&НаКлиенте Процедура Расширение_ПараметрыКассы(Элемент) ОткрытьФорму("ОбщаяФорма.Расширение_ПараметрыКассы"); КонецПроцедуры