Страница: 1 |
Моя программа рисует сложную графику. Если я вместо установки autoredraw=true (что в .Net невозможно), буду перерисовывать всё это в OnPaint это будет долго и неправильно. Как мне эффективно перерисовывать уже нарисованные картинки в событии paint? Объект Image или что-то другое?
может взять DirectDraw? Страница: 1 |
Вопрос: Что вместо AUTOREDRAW?
Добавлено: 10.10.03 21:46
Автор вопроса:
alex_trof
Ответы
Всего ответов: 3
Номер ответа: 1
Автор ответа: Morpheus
Вопросов: 224
Ответов: 3777
Web-сайт:
Профиль | | #1
Добавлено: 11.10.03 08:02
Номер ответа: 2
Автор ответа: Павел
Администратор
ICQ: 326066673
Вопросов: 368
Ответов: 5968
Web-сайт:
Профиль | | #2
Добавлено: 11.10.03 11:24
Ты рисуешь средствами GDI+? Тогда лучше рисовать не на объекте
Graphics, а создать Bitmap. Я точно не помню, как это делается,
почитайте книжку умную или MSDN. Суть в том, что Bitmap не стирается
при перекрывании его на экране другими объектами.
Номер ответа: 3
Автор ответа: grayk
Вопросов: 5
Ответов: 100
Профиль | | #3
Добавлено: 13.10.03 12:46
Вообще-то, переопределенный метод OnPaint не рисует огульно всё, что в нем описано. Не знаю как, но по-настоящему перерисовывается только та область холста, которая в этом нуждается. Я пробовал рисовать в нем не то что бы очень сложную графику, но в цикле - очень много простых объектов. Отлично работает.