ActiveX-компонента для работы с векторной графикой: рисует примитивы (прямоугольники, линии, многоугольники, эллипсы, текст), группирует их в сложные объекты. Позволяет вращать, деформировать, масштабировать. Инициируются события (при шелчке (одинарном и двойном) мышки на объекте и др.). Фигуры позволяют хранить ссылки на объекты 1С.
Бесплатные
ВНИМАНИЕ:
Файлы из Базы знаний - это исходный код разработки.
Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы.
Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных.
Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Узнавайте о новых бесплатных решениях в нашей телеграм-группе
Инфостарт БЕСПЛАТНО
Создайте свой функциональный интерфейс в любой конфигурации 1С с помощью расширения Infostart Dashboard.
Настраивайте панели виджетов с метриками, индикаторами и показателями на начальном экране.
Узнайте возможность внедрения подсистемы у себя в конфигурации с помощью бесплатной обработки "Анализ внедрения подсистемы 1С Infostart Dashboard"!
Расширение «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8».
Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.
Универсальный редактор картинок 1С предназначен для обработки изображений в режиме «Предприятие», с возможностью рисовать на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). В комплект поставки включены Расширения для легкого подключения данного функционала в БК, УТ, КА и ERP. Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Обработка будет особенно полезна тем, кто вносит картинки в базу. Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).
Знакомая ситуация? Пользователи, особенно менеджеры, уверены: отборов много не бывает. Идут пожелания добавить в форму списка еще один быстрый фильтр, еще два, еще пять...
В итоге интерфейс превращается в нагромождение полей отбора, а потребность в «самом главном» отборе, который «вот прямо сейчас нужен», все равно не закрыта.
Универсальное расширение, которое решает эту проблему элегантно и технологично. С его помощью в любую форму списка можно легко добавить панель настраиваемых кнопок-закладок, каждая из которых применяет сложный фильтр-запрос, а так же показывает актуальное количество элементов в реальном времени.
Разработка "Дизайнер форм 1С" реализована в виде расширения 1С и является универсальным инструментом для разработки прототипа форм с целью демонстраций, технических заданий и т.д. Без участия разработчика с возможностью экспорта в файл внешней обработки и генерации формы используя искусственный интеллект.
Это инструкция по дизайну форм в среде 1С. Гайд охватывает рекомендации и стандарты для оптимизации пользовательского интерфейса. В гайде содержатся указания по использованию элементов интерфейса, включая как основные, так и продвинутые аспекты. Предоставляются также примеры и антипримеры для наглядного понимания принципов дизайна
Описание методов и объектов будет позже.
Пока программно можно создавать только прямоугольник.
А вот поиграться визуальным редактированием можно уже сейчас.
Группировать объекты, вращать, растягивать, деформировать и т.п.
Если бы существовала возможность вызывать определенное событие в 1С (например, открытие формы списка или элемента) при определенных действиях с фигурами (например, при двойном клике), было бы просто супер
(11) :))
Смотри еще в сторону групиировки простых элементов в сложный. Визуально.
Я пока программно это реализовываю. Ну и, конечно, будет ассоциация объекта с 1С-ными данными.
А можешь добавить описание как ты сделал сам Активикс, чтобы он работал с 1С? Я в своё время пытался, но знаний не хватило. Также не разобрался до конца, почему одни активиксы работают в 1С, другие - нет.
(19) я почему вспомнил это: пробовал какой-то зарубежный активикс (было это полгода назад, забыл уже что за хрень, вроде так и называется Vector Graphics ActiveX), позволяющий рисовать векторную графику, прямо как этот активикс от Душелова. Ну вот он и отказался работать в 1С. Хотя даже в Wordе работал.
Процедура ПослеОткрытия()
Рисование= СоздатьОбъект("АктивИкс");
Рисование.УстановитьАтрибут(Форма, "АктХ");
//"АктХ" - идентификатор элемента диалога, на месте которого будет создан элемент ActiveX.
//только для реквизитов диалога типа "Текст".
Рисование.СоздатьЭУ("Душелов.VectorDrawing");
Рисование.УстановитьФокус();
КонецПроцедуры
А результаты Деформирования объекта не записываются что ли?
Еще - если к существующим фигурам добавить стрелку , то при сохранении вываливается вот такая ошибка:
Рисование.Объект.Записать(КаталогИБ()+"Элементы\"+Наименование+".xml");
{Справочник.Элементы.Форма.Модуль(36)}: Dushelov.VectorDrawing1C: Не удалось привести тип объекта "Душелов.Graphics.Bidimensional.Common.ArrowAppearance" к типу "Душелов.Graphics.Bidimensional.Common.PolygonAppearance".
И что про то что удаленные фигуры все равно сохраняются в файл что скажете?
текст ошибки из (131)
************** Текст исключения **************
System.InvalidCastException: Не удалось привести тип объекта "Душелов.Graphics.Bidimensional.Common.ArrowAppearance" к типу "Душелов.Graphics.Bidimensional.Common.PolygonAppearance".
в Душелов._1C.Полигон.get_ЦветФона1()
в Душелов._1C.Фигура.AddPolygonSettings(XmlWriter writer)
в Душелов._1C.Фигура.AddFigure(XmlWriter writer)
в Душелов.VectorDrawing.ПолучитьОписаниеФигур()
в Душелов.VectorDrawing.Записать(String file)
в Душелов.VectorDrawing.записатьToolStripMenuItem_Click(Object sender, EventArgs e)
в System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
в System.Windows.Forms.ToolStripButton.OnClick(EventArgs e)
в System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
в System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
в System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
в System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
в System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
в System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
в System.Windows.Forms.Control.WndProc(Message& m)
в System.Windows.Forms.ScrollableControl.WndProc(Message& m)
в System.Windows.Forms.ToolStrip.WndProc(Message& m)
в System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
в System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
в System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
В клюшках (в них самих) ваще нет сочетания CTRL+A (уроды, блин)
Помню, когда делал форматтер для клюшек приходилось программно нажимать пункт меню "Выделить всё"
Ну как обычно :) Душелов жжот :)
Сделай пожалуйста дружищще описание методов и объектов.
Мне как раз сейчас такая штука нужна.
В табличном поле это не красиво выглядит да и изменять надо....
есть на крайнем севере поселок.....
вагончики стоят.....
- Хм ну вот ваши вагончики... можете просто щелкнуть по одному и посмотреть кто там живет....
- А если я вагончик передвину, ну или еще один поставлю, ну или уберу устаревший... как мне........?
- Ну там есть справочник "Вагончики", ну там есть коодинаты....
- Коорди.. что? оО
Не весь топик прочитал....
того что есть в комментах уже достаточно
Душевное спасибо!!!!
Душелов, кинь мне на dushich(собака)mail.ru свой номер кошелька. Буду зарплатой делицца :)
Стоит разрабатывать. Как минимум за то, что в векторную фигуру передавать ссылку на 1С-овский объект. Мне проще свое написать, чем брать чужие, платные, ломать их и т.п.
(50)
Я не говорю, что не стоит, может проще пойти по другому пути, взяв за основу что-то зарекомендовавшее себя? Если бы, как вы писали выше, Corel открыл свой формат, возможно Вы бы взяли его за основу ведь так?
Почему платных? Тот же VGA версии 1,0 бесплатен, CorelSVG, AdobeSVG
Что имеется ввиду передавать ссылку?
Ассоциировать элемент графики с объектом 1С можно через какое-нибудь банальное id объекта.
(51) Ага. id.. И для того, чтобы, к примеру, при наведении мышкой на объект выпадало меню с действиями и с информацией о предварительной цене (к примеру ПВХ), наличии на складе. Что делать будем с этими зарекомендовавшими объектами? ;)
(53) Ага, спасибо, и отдельный слой пересчитывать при масштабировании и скроллинге.
(55) Нет, меню выпадать будет собственное, но оно будет генерить события в 1С.
(53) Ага, спасибо, и отдельный слой пересчитывать при масштабировании и скроллинге.
Затраты времени для пересчета при масштабировании и скроллинге будут заметны при большом количестве объектов, к примеру в ГИС приложении.
Посмотрите библиотеку IbisMap разработки Rebelx - никаких задержек при большом количестве объектов
(55) Нет, меню выпадать будет собственное, но оно будет генерить события в 1С
Реализовывал это же на базе SVG пару лет назад - ничего сложного
Я думал, вы хотите реализовать обработку событий объекта графики с помощью объектов 1С - меню, диалогов и т.д.
Вот это было бы по настоящему....
Не предполагал, что задумка у вас настолько глубока. Если удасться интегрировать ваш AX в среду настолько, насколько Вы описали - равных ему я думаю не будет.
но в дальнейшем, как обычно, встанет вопрос скорости отрисовки объектов, расширения за счет скриптов :)
(58) >Я думал, вы хотите реализовать обработку событий объекта графики с помощью объектов 1С - меню, диалогов и т.д.
А оно это надо? Можно и это окно вызывать. Передаешь объект 1С-овский, у него свой форма с меню, ее вызывать без проблем, как в моей Tray1C, где всплывающее окно 1Совское вызывается.
А есть такая компонента для 1С которая могла бы например определить что подключено 2-а монитора и выводить мне нужную информацию на второй монитор из 1С ?
Правда пока еще есть загрузку до конца не доделал (текст пока не грузится, как положено), но все в процессе разработки дальше. Тестировать можно дальше.
Так же слушаю предложения.
В ближайшее время добавлю работу с 1С-ными объектами, ассоциированными фигурам.
Я так понял из всего прочитанного выше вы хотите автоматизировать учет в кинотеатрах ?! Т.к. например в "USC примера" для автоматизации кинотеатров поддерживается монитор посетителя где кассир нажимает кнопку у себя и на втором мониторе показывается какие места свободны в зале. Ну а если в 1С невозможно реализовать работу с 2-я мониторами то не очень то и удобно это, особенно когда еще и зал то не один как было в моем случае, а аж 3-и и все разные по размерам и количествам мест. Думаю кассиру не очень объяснять на пальцах какое и где место свободно.
Или есть какая то другая альтернатива монитору посетителя ?
Т.к. я то же в свое время хотел написать по 8-ку автоматизацию кинотеатра.
Я все жду когда появится вывод схемы в графический файл и на принтер. Это по моему должна быть первостепенная задача, которая должна быть реализована. Без этого весь смысл схемы теряется.
При закрытии обработки рекомендуется использовать метода "Закрыть()" для очистки памяти и предотвращение зависания 1С в задачах.
Добавил у фигур свойство "Объект", которое хранит ссылку на любой объект 1С.
Т.е. можно писать конструкции, вида:
"Прямоугольник.Объект.ПолучитьФорму().Открыть();"
1. Хотелось бы задавать размеры редактируемого поля ну и его вертикальный и горизонтальный скроллинг.
2. Добавочное поле к каждому объекту "Title", которое выводилось бы всегда, либо в середине либо рядом с объектом (по выбору).
3. Поле Текст оставить, что-то я его не обнаружил в компоненте.
4. Возможность привязки соединительных линий к объектам и чтобы при перемещении объекта соединительная линия следовала за ним, ну и возможность установки стрелок у этих линий.
Обновил.
Добавил несколько новых методов и свойств.
Добавил демонстрационную конфигурацию "Визуализация сети", которая, используя компоненту, рисует сеть, можно посмотреть параметры компьютеров, щелкнуть мышкой по ним для открытия из форм...