Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
16.05.2014, 16:35
|
|||
---|---|---|---|
Перетаскивание Rectangle по PictureBox |
|||
#18+
Доброго всем дня! Не ругайте, что вопрос бородатый, но в инете пригодного решения для себя я не нашел. Первый раз работаю с графикой в C#.Net. Задача просто - на PictureBox куча Rectanle-ов в виде кружков, и еще есть сетка по всему боксу и нужно по нему мышью перетаскивать кружки. Сделал так,что кружки перетаскиваются, но за ними остается след в виде "змейки". Вопрос - стоит ли после каждого смещения кружка чистить канву или есть какой-то Pen или Brush mode, который позволит избежать перерисовки канвы, ибо в этом случае придется мудрить с сеткой? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.05.2014, 18:02
|
|||
---|---|---|---|
Перетаскивание Rectangle по PictureBox |
|||
#18+
NDAlekseyВопрос - стоит ли после каждого смещения кружка чистить канву или есть какой-то Pen или Brush mode, который позволит избежать перерисовки канвы, ибо в этом случае придется мудрить с сеткой? да, нужно чистить PS. не рисуй через GDI+ ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.05.2014, 18:54
|
|||
---|---|---|---|
Перетаскивание Rectangle по PictureBox |
|||
#18+
pationда, нужно чистить PS. не рисуй через GDI+ Повторюсь - у меня не просто одинокие кружочки, а есть еще сетка на канве, а у сетки масштаб ячейки меньше диаметра кружка. Перерисовка всей канвы - а это сетка + все кружочки - происходит с ощутимой задержкой. А GDI+ вынужден использовать по условию задания. В архиве готовое решение. Задача - избавиться от задержек при перемещении. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.05.2014, 19:12
|
|||
---|---|---|---|
Перетаскивание Rectangle по PictureBox |
|||
#18+
NDAlekseyПовторюсь - у меня не просто одинокие кружочки, а есть еще сетка на канве, а у сетки масштаб ячейки меньше диаметра кружка. Перерисовка всей канвы - а это сетка + все кружочки - происходит с ощутимой задержкой. А GDI+ вынужден использовать по условию задания. В архиве готовое решение. Задача - избавиться от задержек при перемещении. Повторюсь - да при данной реализации нужно чистить (а потом перерисовывать всё и сетку и кружки) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.05.2014, 19:24
|
|||
---|---|---|---|
Перетаскивание Rectangle по PictureBox |
|||
#18+
pationПовторюсь - да при данной реализации нужно чистить (а потом перерисовывать всё и сетку и кружки) Но при большом количестве кружков или при детальной (крупномасштабной) сетке происходят эти задержки..... От них не вариант избавиться? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.05.2014, 20:01
|
|||
---|---|---|---|
Перетаскивание Rectangle по PictureBox |
|||
#18+
NDAlekseypationПовторюсь - да при данной реализации нужно чистить (а потом перерисовывать всё и сетку и кружки) Но при большом количестве кружков или при детальной (крупномасштабной) сетке происходят эти задержки..... От них не вариант избавиться? повторюсь - не рисуй через GDI+ ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.05.2014, 20:43
|
|||
---|---|---|---|
Перетаскивание Rectangle по PictureBox |
|||
#18+
pationповторюсь - не рисуй через GDI+ Мне кажется, или меня тут троллят этим "повторюсь"? = ) Как бы то ни было, я получил то, что хотел. Я выводил из буфера на канву только при событии перерисовки pictureBox-а.... А нужно было делать эту операцию на pictureBox_MouseMove! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=20&mobile=1&tid=1402914]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 322ms |
total: | 462ms |
0 / 0 |