Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Перетаскивание Rectangle по PictureBox / 8 сообщений из 8, страница 1 из 1
16.05.2014, 16:35
    #38643719
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перетаскивание Rectangle по PictureBox
Доброго всем дня!
Не ругайте, что вопрос бородатый, но в инете пригодного решения для себя я не нашел. Первый раз работаю с графикой в C#.Net.
Задача просто - на PictureBox куча Rectanle-ов в виде кружков, и еще есть сетка по всему боксу и нужно по нему мышью перетаскивать кружки. Сделал так,что кружки перетаскиваются, но за ними остается след в виде "змейки".
Вопрос - стоит ли после каждого смещения кружка чистить канву или есть какой-то Pen или Brush mode, который позволит избежать перерисовки канвы, ибо в этом случае придется мудрить с сеткой?
...
Рейтинг: 0 / 0
16.05.2014, 18:02
    #38643822
pation
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перетаскивание Rectangle по PictureBox
NDAlekseyВопрос - стоит ли после каждого смещения кружка чистить канву или есть какой-то Pen или Brush mode, который позволит избежать перерисовки канвы, ибо в этом случае придется мудрить с сеткой?
да, нужно чистить

PS. не рисуй через GDI+
...
Рейтинг: 0 / 0
16.05.2014, 18:54
    #38643883
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перетаскивание Rectangle по PictureBox
pationда, нужно чистить

PS. не рисуй через GDI+

Повторюсь - у меня не просто одинокие кружочки, а есть еще сетка на канве, а у сетки масштаб ячейки меньше диаметра кружка. Перерисовка всей канвы - а это сетка + все кружочки - происходит с ощутимой задержкой. А GDI+ вынужден использовать по условию задания.

В архиве готовое решение. Задача - избавиться от задержек при перемещении.
...
Рейтинг: 0 / 0
16.05.2014, 19:12
    #38643889
pation
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перетаскивание Rectangle по PictureBox
NDAlekseyПовторюсь - у меня не просто одинокие кружочки, а есть еще сетка на канве, а у сетки масштаб ячейки меньше диаметра кружка. Перерисовка всей канвы - а это сетка + все кружочки - происходит с ощутимой задержкой. А GDI+ вынужден использовать по условию задания.

В архиве готовое решение. Задача - избавиться от задержек при перемещении.

Повторюсь - да при данной реализации нужно чистить (а потом перерисовывать всё и сетку и кружки)
...
Рейтинг: 0 / 0
16.05.2014, 19:24
    #38643894
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перетаскивание Rectangle по PictureBox
pationПовторюсь - да при данной реализации нужно чистить (а потом перерисовывать всё и сетку и кружки)

Но при большом количестве кружков или при детальной (крупномасштабной) сетке происходят эти задержки..... От них не вариант избавиться?
...
Рейтинг: 0 / 0
16.05.2014, 20:01
    #38643905
pation
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перетаскивание Rectangle по PictureBox
NDAlekseypationПовторюсь - да при данной реализации нужно чистить (а потом перерисовывать всё и сетку и кружки)

Но при большом количестве кружков или при детальной (крупномасштабной) сетке происходят эти задержки..... От них не вариант избавиться?

повторюсь - не рисуй через GDI+
...
Рейтинг: 0 / 0
16.05.2014, 20:43
    #38643919
NDAleksey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перетаскивание Rectangle по PictureBox
pationповторюсь - не рисуй через GDI+

Мне кажется, или меня тут троллят этим "повторюсь"? = ) Как бы то ни было, я получил то, что хотел. Я выводил из буфера на канву только при событии перерисовки pictureBox-а.... А нужно было делать эту операцию на pictureBox_MouseMove!
...
Рейтинг: 0 / 0
19.05.2014, 16:34
    #38645440
mmnick
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перетаскивание Rectangle по PictureBox
двойная буферизация вам в помощь, плюс Invalidate - прежнего положения, никогда не перерисовывайте всю канву целиком.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Перетаскивание Rectangle по PictureBox / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]