Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.10.2011, 18:29   #1
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию Рисовать в своем окне линии.

Как я понимаю, рисовать нужно на HDC окна. Только вот вопрос. Это нужно перерисовывать все линии на WM_PAINT? Или просто заново HDC перерисовать (как?)
TwiX вне форума Ответить с цитированием
Старый 22.10.2011, 18:39   #2
counter
Участник клуба
 
Регистрация: 18.10.2008
Сообщений: 1,409
По умолчанию

я так понял тебе нужно, чтобы ранее нарисованное сохранялось?
тогда создавай совместимый HDC и в нем рисуй, а потом выводи его в окно
counter вне форума Ответить с цитированием
Старый 22.10.2011, 19:54   #3
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию

Спасибо. То, что нужно)
TwiX вне форума Ответить с цитированием
Старый 23.10.2011, 00:06   #4
An1ka
C++,DirectX/OpenGL
Форумчанин
 
Регистрация: 09.01.2011
Сообщений: 422
По умолчанию

Цитата:
Сообщение от TwiX Посмотреть сообщение
Как я понимаю, рисовать нужно на HDC окна. Только вот вопрос. Это нужно перерисовывать все линии на WM_PAINT? Или просто заново HDC перерисовать (как?)
WM_PAINT вызывается, когда нужно перерисовать окно:
Цитата:
• Предварительно скрытая область окна открылась, когда пользователь передвинул окно или выполнил какие-то действия, в результате которых окно вновь стало видимым.
• Пользователь изменил размера окна (если в стиле класса окна установлены биты CS_HREDRAW и CS_HVREDRAW).
• В программе для прокрутки части рабочей области используются функции ScrollWindow или ScrollDC.
• Для генерации сообщения WM_PAINT в программе используются функции InvalidateRect или InvalidateRgn.
Код:
case WM_PAINT:
hdc=BeginPaint(hwnd, &ps);
// тут использование функций GDI
EndPaint(hwnd, &ps);
return 0;
An1ka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сделать из линии, толщиной в несколько пикселей, линии, толщиной 1 пиксель. ImmortalAlexSan Общие вопросы Delphi 12 25.10.2012 19:05
Как правильно рисовать линии на окне tumanovalex Qt и кроссплатформенное программирование С/С++ 2 27.05.2011 12:03
TCaption в своем классе ZotaC Gamedev - cоздание игр: Unity, OpenGL, DirectX 6 26.05.2010 19:21
как рисовать текст на чужом окне Crazyman Win Api 5 23.01.2009 00:23