0. Душелов 3903 05.05.09 17:02 Сейчас в теме

[GDI+] - Рисуем программно в 1С

ActiveX-компонента для рисования в 1С.

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. Душелов 3903 05.05.09 17:02 Сейчас в теме
Снова почитал комменты http://infostart.ru/projects/1747/?p=3#comm50
и решил написать свою компоненту...
vladimir-boy; +1 Ответить
2. vip 05.05.09 17:11 Сейчас в теме
Давно пишу такой же активикс, да все не допишу.
Василий, развивать дальше будешь?
Если нет, буду дописывать свой, если да, попробую твой. ;))
GDI+ действительно используешь или название прихватизировал просто?

Однозначно плюс.
3. Душелов 3903 05.05.09 17:13 Сейчас в теме
(2) Реально его использую. В понятии .NET я сделал обертку для пространства имен System.Drawning;

Развивать в целом - да. Есть еще ряд того, чего я не успел сегодня сделать :)
5. vip 05.05.09 17:16 Сейчас в теме
(3) Гуд.
С удовольствием потестю, и, с разрешения, попробую применить.
С хотелками и ошибками куда обращаться?
107. GSA3D 23.01.12 15:44 Сейчас в теме
(3) Пространство имен System.Drawning; это тут?
А как заставить их работать в 1С?
4. Abadonna 3836 05.05.09 17:15 Сейчас в теме
за активикс-то вроде как плюс, но вопросик мучает - а на фига?
6. vip 05.05.09 17:18 Сейчас в теме
(4) Уж ты то в курсе, зачем он мне ;))
И первому активиксу ты меня научил.
8. Abadonna 3836 05.05.09 17:22 Сейчас в теме
(6) Да я не про актив-икс. Хоть убей не могу понять ЗАЧЕМ рисовать через одно место внутри 1С
(7) Опять таки не понимаю - ЗАЧЕМ рисовать
9. Душелов 3903 05.05.09 17:26 Сейчас в теме
(8) Видно, иногда кому-то надо :) Какое-нибудь визуально представление чего-нибудь :))))
krasavcheg; +1 Ответить
11. vip 05.05.09 17:30 Сейчас в теме
(9) Скажу, зачем это мне.
Голубая мечта - конфа для производителей изделий ПВХ.
Рынок не тронут, работы хватит до конца жизни.
vitaliy.ermolenko; +1 Ответить
12. Abadonna 3836 05.05.09 17:30 Сейчас в теме
(11) Т.е ты хочешь сказать, что если я добавлю в Miracle рисование прямо но форме отчета - это будет зашибись? Там добавить - даже проще чем два байта остослать...
13. vip 05.05.09 17:32 Сейчас в теме
(12) Будет. И было уже у тебя.
Только рисование рисованию рознь.
14. vip 05.05.09 17:35 Сейчас в теме
(12) И то, что это активикс, тоже хорошо. Можно наделать примитивов на нескольких экземплярах АХ и складывать их мышей, как кубики.
28. kolyada 295 06.05.09 02:54 Сейчас в теме
(11)
Насчет голубой мечты в ПВХ:
с графикой в 1С8 прекрасно справляется VML (граф. язык встроенный в IE и заодно в соотв. объект 1С). На одной фирме (ООО "Промаокна" в Москве, если кому интересно) я так и реализовывал расчет изделий ПВХ. Всё элементарно и безо всяких доп. ухищрений типа активикс. Довольно небольшой код позволял интерактивно рисовать (визуально результат выглядел не хуже чем в специализированных ппрограммах) и обсчитывать как прямоугольные конструкции, так и арочные, треугольные и т.п. Единственно ОЧЕНЬ сильно пришлось вспоминать математику с её синусами и косинусами.
38. vip 07.05.09 09:17 Сейчас в теме
(28)(37) Насчет рисования изделий ПВХ.
На самом деле особая графическая мощь тут не нужна.
При массовом производстве 99% изделий состоят из простых элементов - рама, створки, импосты.

Я пошел таким путем.
При использовании моего активикса рисование створки, например, выглядит примерно так: ЗакуячитьСтворкуЛевуюПоворотноОткидную(Ширина,Высота). Вся математика зашита в активиксе.

На форме при помощи FormEx динамически создается нужное число контейнеров для активикса. Каждый экземпляр это ПВХ-примитив (рама, створка и т.д.). И из них собирается изделие.
Изменение размеров/положения (опять-таки при помощи FormEx) делается мышей (или вводом размера).
На экране изделие отображается с пропорциональными размерами, что важно для понимания, как будет выглядеть готовое изделие.

Таким образом, в документе я храню только вид и координаты ПВХ-примитивов.
При открытии формы документа, картинка рисуется заново.
Чем не векторная графика? ;))

Так что использовать компоненту Василия пока погожу.
Все равно большое спасибо ему, натолкнул на некоторые мысли :))
39. kolyada 295 07.05.09 14:32 Сейчас в теме
(38) в том то и дело, что считать нестандарт ПВХ (арки, трапеции и т.п.) на примитивах никак нельзя. И они точно составляют больше 1% при массовом производстве (если конечно не сидеть на заказах новостроек) - заказчик ныне пошёл привиредливый. Так что векторная графика в 1С нужна и автор пусть дальше развивает контрол.
40. vip 07.05.09 14:47 Сейчас в теме
(39) Конечно, пусть развивает.
А я буду развивать свой :))

Все больше склоняюсь к мысли, что нестандарт можно посчитать и на бумажке ;))
Не стоит овчинка выделки.
41. kolyada 295 07.05.09 15:32 Сейчас в теме
(40) ну смотря какого размера фирма и требования к персоналу расчитывающему изделия. На той фирме где я работал изделия расчитывали менеджеры (не конструктора) и результат расчета они должны были сказать сразу вне зависимости от сложности. Научить даже одного менеджера правильно расчитать нестандарт - утопия. А их на фирме было 50 человек в офисе + куча в регионах и на точках по всей Москве.
45. Душелов 3903 08.05.09 23:55 Сейчас в теме
36. vladsol 06.05.09 22:57 Сейчас в теме
Рисовать действительно бывает нужно, поэтому +.
(11)(28) Я тоже сталкивался с этой проблемой в ПВХ (производство окон), тогда я пошел через использование PHP. Программно по заданным пользователям установкам генерился скрипт, выполнялся и в 1с возвращалась картинка. Жалко у меня тогда не было этой компоненты, жизнь была бы легче.
37. maljaev 790 07.05.09 00:42 Сейчас в теме
(36) vladsol, а ты бы поиском по сайту воспользовался. У меня уж год подобная штука лежит (правда не моя), только у Душелова она выполнена в виде ActiveX-контрола, что конечно же удобно, но до функционала Gflax не дотягивает. Конечно Дужелов и не будет дотягивать контрол до gflax, он просто скорее всего сделает тот функционал которого там нету - например векторные сплайны, анимацию, градиенты. Ну а в случае с ПВХ хватило бы и Gflax, по крайней мере с PHP бы не извращался.

Душелов, даёшь мощную векторную графику!!! :)
10. vip 05.05.09 17:28 Сейчас в теме
(8) Если рисунок рисуется по данным 1С или наоборот, данные берутся из рисунка, то через то место получается как раз, когда рисуешь ВНЕ 1С.
7. Душелов 3903 05.05.09 17:20 Сейчас в теме
(4) Ну к примеру можешь комменты почитать в (1) ссылка.
Что-то рисовать, графики какие-то.
59. rboy 22.06.09 16:28 Сейчас в теме
Счас ковыряюсь с Душелов.GDI на восьмерке,

запускаю вот такой фрагмент кода в цикле

Точки = Рис.СоздатьМассивТочек(4);
Рис.УстановитьТочкуВМассив(Точки, 0, Рис.СоздатьТочку(X+40, 10));
Рис.УстановитьТочкуВМассив(Точки, 1, Рис.СоздатьТочку(X+40, 40));
Рис.УстановитьТочкуВМассив(Точки, 2, Рис.СоздатьТочку(X+30, 30));
Рис.УстановитьТочкуВМассив(Точки, 3, Рис.СоздатьТочку(X+30, 20));

Рис.ЗаполнитьМногоугольник(Кисть, Точки);
Рис.РисоватьМногоугольник(ЧерноеПеро, Точки);

тут в цикле изменяется только "X". В результате появляется ругатня на функцию "ЗаполнитьМногоугольник", типо исключительная ситуация, Parameter is not valid.

Такое впечатление что функция ЗаполнитьМногоугольник может вызываться ограниченное количество раз
15. Abadonna 3836 05.05.09 17:37 Сейчас в теме
Ну лана, рисуйте;) Мне бы ваши заботы :))))))))))
16. vip 05.05.09 17:39 Сейчас в теме
(15) И скорость отрисовки на уровне пикселей при использовании GDI+ должна быть высокой.
> Мне бы ваши заботы
Стареешь, блин ;))
17. Душелов 3903 05.05.09 22:49 Сейчас в теме
На самом деле можно добавить и визуальное рисование, да оно не надо.
Как вариант - добавить шейпы, которые предварительно описаны и двигать их мышкой.
18. GSoft 2851 05.05.09 23:49 Сейчас в теме
19. Душелов 3903 05.05.09 23:54 Сейчас в теме
(18) Ага, что-то типа MS Visio получится :))
20. GSoft 2851 06.05.09 00:01 Сейчас в теме
а одним только формексом обойтись низя?

(18) ну в каком то усеченном варианте да
21. Душелов 3903 06.05.09 00:04 Сейчас в теме
(20) На сколько я знаю, 1С++ создает объект АктивХ, а формэкс пользуется ради "ПослеОткрытия".
22. GSoft 2851 06.05.09 00:12 Сейчас в теме
Василь а можешь сделать компоненту которая просто таскает картинки по форме + пару полигонов, типа линии, прямоугольника и круга?
23. Душелов 3903 06.05.09 00:13 Сейчас в теме
24. GSoft 2851 06.05.09 00:15 Сейчас в теме
общая идея: справочник картинок, оттуда выбираем ее и таскаем по форме
а потом сохраняем все это или в файл конфигураций,или в подчиненные справочники(в зависимости от необходимой реализации)
25. Душелов 3903 06.05.09 00:17 Сейчас в теме
Сохраняем итоговую картинку? Или набор шейпов?
26. GSoft 2851 06.05.09 00:21 Сейчас в теме
лучше второй вариант, готовая картинка как довесок

чтобы при повторном открытии можно было редактировать дальше
27. MrDen 06.05.09 01:39 Сейчас в теме
29. venger 2086 06.05.09 12:59 Сейчас в теме
(0) Василий, (просто не успел качнуть еще, не пробовал) а для игр динамических как, пойдет? Я ж думаю когда-нибудь сделать прохождение лабиринтов с трехмерным видом изнутри ( я про это http://infostart.ru/projects/3474/ ). Просто эта http://infostart.ru/projects/1747/ мне немного не подошла, т.к. обновлять целиком надо файл, а потом его заново отображать, или я не доразобрался с ней... Как думаешь?
31. Душелов 3903 06.05.09 16:24 Сейчас в теме
(29) Возможно. Просто закрашиваешь старое цветом фона и все.
А трехмерный вид изнутри это как? :)

(30) Это уже не к этой компоненте.
33. venger 2086 06.05.09 16:54 Сейчас в теме
(31) > А трехмерный вид изнутри это как? :)

Ну типа как в 3D-бродилках (тот же Doom), только попроще, без теней и крутой графики;-) В общем, не спрашивай лучше, сам боюсь;)
34. Душелов 3903 06.05.09 16:59 Сейчас в теме
(33) Это лучше мой 3Д склад использовать :))
30. CheBurator 06.05.09 13:14 Сейчас в теме
Да! и чтобы еще к графическому примитиву можно было привязывать некий "описатель" 1Совский - типа "Расшифровки" - а туда уже можно запихнуть какой-хочешь 1Совский объект - хоть СЗ, хоть ТЗ, хоть описательную строку... - вот такая у мну хотелка
32. roman 06.05.09 16:33 Сейчас в теме
БОЛЬШОЙ +. Василий, будете в Вильнюсе, милости просим в гости - с меня пиво, сам хотел писать подобное
35. Душелов 3903 06.05.09 16:59 Сейчас в теме
(32) Ну как буду в Вильнюсе - напомню ;)
42. elkpro 08.05.09 10:05 Сейчас в теме
Не могу заставить работать из под 1С 7.7.

Код такой

Перем Кисти_;

//***************************************************************
Процедура ПослеОткрытия()
Кисти_ = СоздатьОбъект("АктивИкс");
Кисти_.УстановитьАтрибут(Форма, "АктХ");
Кисти_.СоздатьЭУ("Душелов.GDI");
Кисти_.УстановитьФокус();

КонецПроцедуры

На этом этапе все нормально, но потом на форме пытаюсь сделать

Кисти_.НоваяКартинка(400,200);

выдает ошибку Поле агрегатного объекта не обнаружено (НоваяКартинка).
Почему так?
43. Ёпрст 1036 08.05.09 10:06 Сейчас в теме
(42) Кисти_.Объект.НоваяКартинка(400,200);
47. vladimir-boy 29.05.09 17:16 Сейчас в теме
Отличная разработка! Просто жесть!!! Автору большой плюс и признание!
Но к сожаленью так и не смог ничего нарисовать в семёрке, так как нет реального живого примера например элементарной обработки или отчётика, где реализован весь етот шедевр!!!
У меня к примеру(42) выдаёт ошибку: "Неудачная попытка создания объекта (АктивИкс)"
Напишите пожалуйста например обрабоку с кодом построения точки, линии на форме!
А вообще огромное человеческое спасибо!!!
48. Ёпрст 1036 29.05.09 17:22 Сейчас в теме
(47) Установите 1с++ для начала, раз ругается на объект АктивИкс...
vladimir-boy; +1 Ответить
49. vladimir-boy 29.05.09 18:34 Сейчас в теме
(48) Спасибо ЁПРСТ! Забыл ЗагрузитьВнешнююКомпоненту, но после загрузки проблема не исчезла снова новая ошибка: "Неверный идентификатор атрибута"
Ребята кто-нить может выложить пример.ert, чтоб было наглядно понятно как и что? Заранее огромное пасибо!!!
44. elkpro 08.05.09 10:27 Сейчас в теме
46. alekseineputin 12.05.09 15:54 Сейчас в теме
Уверен, что хорошая разработка. Плюс.
50. Душелов 3903 29.05.09 20:52 Сейчас в теме
Добавил пример работы с компонентой из 7.7
vladimir-boy; +1 Ответить
51. vladimir-boy 01.06.09 11:13 Сейчас в теме
(50)Пример - суперсила!!! Большое пребольшое спасибо!!!
52. MadRabbit 101 22.06.09 11:38 Сейчас в теме
Знатная штука! С разрешения автора попользуюсь немного. Вот если бы кто-нибуть подсказал как такое написать :)) с добавлением Drag&Drop... или может ссылочку какую-нибуть полезную кинул... то с меня пиво!
53. Душелов 22.06.09 11:52 Сейчас в теме
54. MadRabbit 101 22.06.09 11:54 Сейчас в теме
(53) Надо пользователюкартинки по форме перетаскивать, а мне - отслеживать, и при масштабировании, смене ориентации страницы и т.д. учитывать. А как пока не пойму...
55. Душелов 22.06.09 11:56 Сейчас в теме
(54) Данная компонента исключительно для программного рисования. Никаких юзерабилити действий.

Для "перетаскиваний" есть соседняя разработка.
56. MadRabbit 101 22.06.09 12:19 Сейчас в теме
(55) "[VectorDrawing] - Векторная графика в 1С"? Смотрел, можно было бы использовать, есть перетаскивание, можно сделать масштабирование, группировку - все замечательно, но пункт контекстного меню "О компоненте" не дает мне возможности ее использовать в своих разработках. Что, по моему, вполне естественно. По этому хотелось бы все-таки самому попробовать разобраться и написать собственную ВК. Кроме того, все-таки хочеться самому чему-нибуть научиться, а не тупо таскать с ИС чужие разработки.
Душелов; +1 Ответить
57. Душелов 22.06.09 13:18 Сейчас в теме
58. MadRabbit 101 22.06.09 13:34 Сейчас в теме
(57) Сэнкс, а то я уже полез за покрывшимся пылью диском с Delphi. Хотя, как говорится, давно не брал я в руки шашку, так что или вспонинать Delphi или изучать .net - одно и тоже :))
60. rboy 22.06.09 16:32 Сейчас в теме
причем если вызываю этот цикл в процедуре "ПриОткрытии" документа, то вс нормально, если вызываю из обработчика нажатия кнопки в форме того же документа, то на определенном номере фигуры выпрыгивает ошибка.
61. Душелов 22.06.09 16:41 Сейчас в теме
(60) Может передаешь несуществующие координаты?

Сделай обработку с примером, где эта ошибка показывается....
62. rboy 22.06.09 17:08 Сейчас в теме
Сейчас сделаю, куда выложить?... я недавно на этом сайте.
64. rboy 22.06.09 17:30 Сейчас в теме
ну вот обработочка

http://narod.ru/disk/10148525000/%D0%92%D0%BD%D0%B5%D1%88%D0%BD%D1%8F%D1%­8F%D0%9E%D0%B1%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B01.epf.html

Нажми на кнопку "выполнить" 2 раза и получишь результат.
Кроме того если попробуешь открыть эту обработку второй раз не закрывая 1С то глюк увидишь после первого нажатия на кнопку "Выполнить"

66. Душелов 22.06.09 20:08 Сейчас в теме
(64) Скачивай обновление.
В своей обработке в процедуре рисования квадратиков добавь очистку памяти

Рис = ЭлементыФормы.GDI;
Рис.ОчиститьПамять();
Рис.НоваяКартинка(700, 700);

Ну и перепиши создание кистей.
65. Душелов 22.06.09 20:06 Сейчас в теме
Изменено:

- СоздатьКисть(r, g, b); //создает объект типа "Кисть" заданного цвета
//r, g, b - числа

Добавлено:

- ОчиститьПамять();
67. rboy 23.06.09 12:31 Сейчас в теме
Вроде заработало после того как поменял СоздатьКисть(r, g, b); даже Рис.ОчиститьПамять(); не использовал.
68. Душелов 23.06.09 12:35 Сейчас в теме
(67) Если часто будете пользоваться перерисовкой, то память стоит очищать, дабы в 1С-ке не было утечки памяти.
69. rboy 23.06.09 12:41 Сейчас в теме
Кстати функция ОчиститьПамять() не работает.

{Форма.Форма1(70)}: Ошибка при вызове метода контекста (ОчиститьПамять): Произошла исключительная ситуация (Dushelov.GDI): Method not found: 'System.GCNotificationStatus System.GC.WaitForFullGCComplete()'.
Рис.ОчиститьПамять();
по причине:
Произошла исключительная ситуация (Dushelov.GDI): Method not found: 'System.GCNotificationStatus System.GC.WaitForFullGCComplete()'.
72. rboy 23.06.09 17:22 Сейчас в теме
73. Душелов 23.06.09 17:31 Сейчас в теме
(72) У меня ее нет.
Поставь себе SP1 для фреймворка, видимо этот метод был добавлен позже.
75. Душелов 25.06.09 22:15 Сейчас в теме
(72) Обновил, пробуй.
Добавил еще сглаживание.
70. rboy 23.06.09 12:45 Сейчас в теме
а нельзя ли воткнуть процесс очистки памяти поместить в функцию НоваяКартинка(), а то запаришся каждому объяснять для чего она нужна.
71. Душелов 23.06.09 13:06 Сейчас в теме
(70) При новой картинке она не нужна.
74. rboy 23.06.09 22:02 Сейчас в теме
Вот такой фреймворк пойдет?

http://www.microsoft.com/downloads/details.aspx?FamilyID=5b2c0358-915b-4eb5-9b1d-10e506da9d0f&DisplayLang=ru

просто у тебя в ридмишке дана ссылка на фреймворк без всяких сервиспаков, я его и ставил.
Спрашиваю прежде чем качать, потму что инет у меня не очень анлим и качать все подряд не очень охота.
76. Душелов 26.06.09 11:03 Сейчас в теме
Добавлены события:

- ПриНажатииКнопкиМышки(Кнопка, X, Y);
- ПриДвиженииМышкой(Кнопка, X, Y);
- ПриОтжатииКнопкиМышки(Кнопка, X, Y);
- ПриШелчкеМышкой(Кнопка, X, Y);
- ПриДвойномШелчкеМышкой(Кнопка, X, Y);
Sudareva; +1 Ответить
77. rboy 26.06.09 14:04 Сейчас в теме
Вот про эти как раз события я и хотел намекнуть. Они как раз нужны в задаче которую я решаю. Спасибо.
78. rboy 26.06.09 14:09 Сейчас в теме
Новый косяк

Рис = ЭлементыФормы.GDI;
ЦветФона=Рис.ПолучитьЦвет(255, 251, 240);
Рис.НоваяКартинка(700, 700);
Рис.Очистить(ЦветФона);

Получаем:

{Документ.XXX.Форма.ФормаДокумента(130)}: Метод объекта не обнаружен (ПолучитьЦвет)
ЦветФона=Рис.ПолучитьЦвет(255, 251, 240);
79. rboy 26.06.09 14:16 Сейчас в теме
(78) Забираю свои слова обратно ошибки нет, просто объект ActiveX надо было удалить и вставить новый.
80. rboy 26.06.09 14:25 Сейчас в теме
События
- ПриНажатииКнопкиМышки(Кнопка, X, Y);
- ПриДвиженииМышкой(Кнопка, X, Y);
- ПриОтжатииКнопкиМышки(Кнопка, X, Y);
- ПриШелчкеМышкой(Кнопка, X, Y);
- ПриДвойномШелчкеМышкой(Кнопка, X, Y);

не работают даже в твоем примере!!!

но Рис.ОчиститьПамять(); - заработала на новой длл-ке без обновлений фреймворка
81. Душелов 26.06.09 14:34 Сейчас в теме
(80) Обнови до SP1 и события будут ловиться. Да и проверь, подписаны ли эти события у компоненты (после того, как удалил/добавил) они у тебя, скорее всего пустые, не подписанные.
82. Alex_Sun 05.10.09 08:42 Сейчас в теме
А эта компонента позволяет програмно узнать текущий цвет какой либо определенной точки рисунка?
83. MAXXL 10 17.10.09 11:15 Сейчас в теме
Подскажите, как в 7.7 использовать события ПриНажатииКнопкиМышки ?
84. Душелов 17.10.09 14:14 Сейчас в теме
(83)

v7: Использовать 1С++ и FormEx
85. MAXXL 10 17.10.09 17:01 Сейчас в теме
(84) Про 1С++ это понятно,я имел в виду события от этой компоненты. Или они для чего предназначены?
86. Душелов 17.10.09 22:35 Сейчас в теме
Ну вот в 1С++ подписываться на эти события и их обрабатывать.
87. zk96 04.12.09 15:21 Сейчас в теме
Можно ли в катинку на форме скопировать картину из памяти? Обе картинки объекты типа Душелов.GDI.
88. asdfgcom 375 07.02.10 17:15 Сейчас в теме
Процедура КнопкаВыполнитьНажатие(Кнопка)
КрасноеПеро = Рис.СоздатьПеро(Рис.ПолучитьЦвет(255, 0, 0), 1);
Рис.РисоватьЛинию(КрасноеПеро,1, 1, 100, 100);
КонецПроцедуры


линия не выводится на форму, пока не свернешь/развернешь окно. Как устроить обновление изображения или что-то в этом роде?
89. asdfgcom 375 07.02.10 18:09 Сейчас в теме
Процедура КнопкаВыполнитьНажатие(Кнопка)
КрасноеПеро = Рис.СоздатьПеро(Рис.ПолучитьЦвет(255, 0, 0), 1);
Рис.РисоватьЛинию(КрасноеПеро,1, 1, 100, 100);
КонецПроцедуры

линия не выводится на форму, пока не свернешь/развернешь окно. Как устроить обновление изображения или что-то в этом роде?


Отвечаю сам себе:
Рис.Refresh();

Уважаемый Dushelov. Control на 5 баллов. То, что нужно, спасибо. Только хотелось бы более подробного описания функций. Трудновато до всего доходить методом тыка...
90. zk96 01.05.10 19:26 Сейчас в теме
Подскажите, как загрузить картинку из памяти, IPicture.
91. zk96 07.05.10 15:09 Сейчас в теме
92. aegoncharov 29.07.10 06:12 Сейчас в теме
А как нарисвать точку? Специальной процедуры нет, а при рисовании линии с совпадающим концом и началом не рисуется ничего.
93. quadro3 21.09.10 11:53 Сейчас в теме
Под Windows 7 не фурычит.
Видимо из-за встроенного там NET 3.5 ((
При установке не находит ngen
Есть лекарство?
94. dvv_mail 28.10.10 19:21 Сейчас в теме
Поддерживаю предыдущего оратора. Какие перспективы работы компоненты по Win7
95. Tria 14 30.12.10 15:57 Сейчас в теме
А что на счет полос прокрутки? Нарисовал большой прямоугольник, он выходит за рамки элемента, но просмотреть все нет возможности.
96. Душелов 3903 30.12.10 22:01 Сейчас в теме
(95) Основная идея - программно рисовать. Отображать можно в стандартном 1С-овском поле картинки
97. Tria 14 31.12.10 15:38 Сейчас в теме
да вот отображать надо именно в Вашей компоненте. Задача в следующем: нарисовать таблицу (большую или нет зависит от пользователя), в некоторых ячейках нарисовать цветные квадратики, некоторые ячейки соединить дугами, и дат пользователю возможность перемещать эти квадратики. А для перемещения надо отслеживать события нажатие кнопки мыши, движение курсора и отжатие кнопки. Поэтому рисовать картинку, сохранять в файл и загружать в поле картинки не подходит.
98. Tria 14 10.01.11 15:42 Сейчас в теме
Нашёл выход: на форме разместить панель, отключить свойство "использовать только видимую область", на ней разместить актив-икс и у него указать ширину и высоту большие, тогда полосы прокрутки будут у панели и много места для рисования! Спасибо за компоненту!
wanderer-miass; Душелов; +2 Ответить
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Технический лидер, архитектор 1С, руководитель проектов
Санкт-Петербург
зарплата от 150 000 руб.
Полный день

Программист 1С
Воронеж
зарплата от 100 000 руб. до 150 000 руб.
Полный день

Ведущий программист 1С (team leader)
Санкт-Петербург
зарплата от 110 000 руб.
Полный день

Программист, аналитик, эксперт 1С
Санкт-Петербург
По совместительству

Программист 1С
Екатеринбург
зарплата от 70 000 руб.
Полный день