Каталог решений - Конструктор картинок CSS

Конструктор картинок CSS

Конструктор картинок CSS

В наличии

Иногда при разработке интерфейса в 1С возникает необходимость более наглядного графического представления объектов. Обработка «Конструктор картинок CSS» облегчит решение этой задачи. Управляемые формы, 1С:Предприятие 8.3 (8.3.15.1830 и выше).

Категория:

Описание

    В ряде случаев, представление объектов в виде картинок делает пользовательский интерфейс более простым и интуитивно понятным. К примеру, карта склада с динамическим обновлением состояния и возможностью выбора стеллажа/ячейки  или рабочее место оператора системы управления АЗС, показанное ниже:

 

   

При этом возможности 1С в этом направлении очень скупы. Как правило, приходится веселиться с программной сборкой форм, картинками, табличными документами, HTML и пр.

   В данной публикации представлен конструктор CSS изображений, упрощающий создание графических элементов с помощью поля HTML:

 


 
   Использование поля HTML + CSS рисование позволяет реализовать практически любые интерфейсные желания.
Основные плюсы способа:
— возможность использования в основных режимах клиентского приложения (управляемые и обычные формы, web и мобильный клиент) 
— возможность динамически формировать и загружать на форму сложные графические отображения объектов
— возможность реализации всей работы с HTML  на Клиенте, создание и обновление изображения не требует обращения на Сервер
— высокая скорость отрисовки, отсутствие подвисаний, миганий и прочих глюков даже при работе на "слабых" ПК
— кликабельность, возможность выбора любого элемента изображения, его идентификации и программной обработки клика.  

Основные минусы: 
— требуются базовые навыки HTML и CSS, иногда javascript
— формирование требуемых шаблонов HTML требует существенного времени и терпения.

   Конструктор картинок CSS реализован в виде независимой внешней обработки 1С и предназначен для ускорения разработки шаблонов HTML. Для его использования требуются минимальные знания HTML и CSS (хотя можно и без них). Возможен запуск в любой конфигурации 1С в режиме управляемых форм на платформе 8.3.15.1830 и выше.

Особенности:
— шаблон картинки формируется путем компоновки блоков HTML и придания им требуемой формы и цвета
— возможность редактирования в режиме конструктора более 50 свойств выбранного блока:

 

 

— результат отображается в поле HTML и динамически обновляется в процессе редактирования; 
— структура редактируемого шаблона представляется в виде дерева и виде готового текста HTML;
— возможность сохранения редактируемой структуры HTML в файл (как полностью, так и выбранного узла);
— возможность вставки нового блока копированием выбранного блока дерева HTML;
— возможность вставки нового блока из выбранного файла;
— возможность вставки нового блока из палитры основных фигур;
— возможность компоновки блоков в дереве HTML (Drag-and-drop, команды перемещения). 

Пример простого использования для управляемой формы:
— подготовьте в конструкторе CSS требуемый шаблон, установите ID для блоков, по которым необходимо отрабатывать клик;
— на форму 1С добавьте строковый реквизит "ПолеHTML"(к примеру) и соответствующий элемент формы с видом "Поле HTML документа";
— в обработчике "ПриОткрытии" формы установите в значение реквизита "ПолеHTML" сформированный в конструкторе CSS текст HTML;
— заполните обработчик события "ПриНажатии" элемента "ПолеHTML":

&НаКлиенте
Процедура ПолеHTMLПриНажатии(Элемент, ДанныеСобытия, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    
    //Поиск ИД выбранного блока
    УровеньВложенности = 10;
    Попытка
        ЭлементID = ДанныеСобытия.Element.ID;
        
        Если ЭлементID = "" Тогда
            Сч = 0;
            Родитель = ДанныеСобытия.Element.parentElement;
            Если Родитель<>Неопределено Тогда 
                ЭлементID = Родитель.ID;
                
                Пока ЭлементID = "" Цикл     
                    Родитель = Родитель.parentElement;
                    Если Родитель<>Неопределено Тогда
                        ЭлементID = Родитель.ID;        
                    Иначе
                        Прервать;
                    КонецЕсли;
                    
                    Сч = Сч+1;
                    Если Сч>УровеньВложенности Тогда
                        Прервать;
                    КонецЕсли;
                КонецЦикла;
            КонецЕсли;
        КонецЕсли;
    Исключение
        ЭлементID = "";
    КонецПопытки; 
    
    Если ЭлементID <> "" Тогда 
       //"ID1", "ID2"... - идентификаторы блоков в HTML
        Сообщить("Выбран блок с ИД "+ЭлементID);
        Если ЭлементID = "ID1" Тогда 
            //код обработки
        ИначеЕсли ЭлементID = "ID2" Тогда
            //код обработки
        Иначе    
            //код обработки
        КонецЕсли;
    Иначе    
        //код обработки
    КонецЕсли;
КонецПроцедуры

Подобным образом в конструкторе CSS реализован выбор предопределенных фигур.

Всем успехов и с наступающим Новым годом!

P.S.
Для подбора цвета в конструкторе CSS картинок я использовал диалог выбора цвета из публикации:

//sale.itcity.ru/public/185249/
Автору большое спасибо!

has been added to your cart:
Оформление заказа