|
Рисование в DataWindow
|
|||
---|---|---|---|
#18+
Доброго времени суток всем PB 6.5 Нужно реализовать вот что: DataWindow в котором будут рисоваться прямоугольники привязанные к своей строке, в одной строке могут быть несколько прямоугольников разного цвета но все они будут привязаны к строке и при прокрутки в DataWindow прямоугольники будут всегда находится в своей строке. Я так понимаю что это реализовывается через dw_1.Modify("Create RectAngle(.....)") но вот вопрос как отслеживать координаты положения строки в DataWindowControl. Возможно тут есть какой то способ это реализовать с минимум гемороя и максимум производительности, потому что таких квадратов будет много, очень много. И еще можно ли будет как то отслеживать клик по определенному квадрату. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2014, 13:18 |
|
Рисование в DataWindow
|
|||
---|---|---|---|
#18+
Kortic, Если меняется только цвет, то используйте выражение на цвет, и храните значение цвета для строк в отдельном поле. Тогда нужен всего один объект в разделе detail, и не нужно никаких координат отслеживать. Ловятся ли клики по прямоугольнику я не помню, но если нет, то можно вместо него использовать text или compute без текста с нужным цветом фона. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2014, 17:31 |
|
Рисование в DataWindow
|
|||
---|---|---|---|
#18+
Anatoly Moskovsky, Все намного сложнее в каждой строчке разное количество квадратов и разного размера, вобще это как то возможно реализовать в DW? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2014, 17:35 |
|
Рисование в DataWindow
|
|||
---|---|---|---|
#18+
Kortic, Если кол-во разных квадратов фиксированное, то можно в каждой строке делать видимыми разные комбинации из заранее созданных квадратов. По-другому не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2014, 18:07 |
|
Рисование в DataWindow
|
|||
---|---|---|---|
#18+
Kortic , как то не совсем понятно задача озвучена. Эти "квадратики" пользователь реально должен рисовать, или DW просто реагирует на действия пользователя и подсвечивает что-то ввиде "квадратиков"? А какую цель этими "квадратиками" Вы пытаетесь добиться? Может достаточно у ячейки столбца менять параметр "бордюр" и его цвет? Тогда и клики можно отрабатывать и редактирование делать, и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2014, 10:36 |
|
Рисование в DataWindow
|
|||
---|---|---|---|
#18+
допустим в строке максимум 100 квадратов делаете в DW 5*100 полей типа лонг - это координаты (x,y,w,h) + цвет рисуете 100 квадратов из текстами с бордером и для каждого устанавливаете использовать координаты из соответствующего поля скрытие задавать через ширину=0 далее только вопрос задания правильных данных в DW исходник DW можно сгенерить динамически ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2014, 15:19 |
|
Рисование в DataWindow
|
|||
---|---|---|---|
#18+
Спасибо за советы! пришел к выводу что создам большое количество колонок которые буду подсвечивать, самый функциональный вариант. Теперь такой вопрос, просто добавить колонку в экстернел DW можно? или нужно создавать DW сразу с определенным количеством колонок? Если создавать сразу, подскажите какой синтаксис для создания экстернел DW, опыта маловато в этом, создавал только на основе процедуры. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2014, 18:21 |
|
|
start [/forum/search_topic.php?author=%D0%9D%D0%BE%D0%B2%D0%BE%D0%BF%D0%B0%D1%88%D0%B8%D0%BD+%D0%92%D0%BB%D0%B0%D0%B4%D0%B8%D0%BC%D0%B8%D1%80&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
51ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
others: | 1106ms |
total: | 1273ms |
0 / 0 |