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