Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Visual C++/MFC/WTL > рисование в dialog box |
Автор: alya 11.3.2008, 19:03 |
привет, народ! есть MFC проект, dialog окно происходит рисование мышью по окну 1) правильно я понимаю, что в диалог боксе не удастся сделать так, чтобы после сворачивания-разворачивания окна отобразились нарисованные каракули? 2) как можно почистить диалог бокс от всего, чтобы было нарисовано? скажите ответы на мои вопросы пожалуйста, т.к. я сама не сообразила... спасибо |
Автор: korian 11.3.2008, 19:54 | ||
Рисование делать в памяти, используя memory dc. На OnDraw копировать из памяти на экран. примерная реализация:
|
Автор: Earnest 14.3.2008, 10:03 |
Вовсе не обязательно в мемори-контексте. Достаточно рисовать как положено в OnPaint... диалог, он тоже окно |
Автор: Earnest 14.3.2008, 12:17 |
А зачем тогда вообще экран пачкать? Кроме того, ты ведь как раз и предлагаешь помнить накаляканное - целый внеэкранный буфер под это дело создавать. А если там прокрутка и масштабирование? Короче, очевидно, что чтобы воспроизводить - надо помнить, а как и в каком виде - от задачи зависит. По большому счету, вариантов 2: растр или вектор. |
Автор: Gongex 14.4.2008, 00:06 |
Ответ на вопрос 2 Аля,я делал,рисунки на диалоге.Мне тут подсказали и у мну получилось. Рисовать надо только в OnPaint а от мышки надо делать Invalidate(TRUE); если нарисовать от левой кнопки на диалоге то никак не стереть оказываеся. |