Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум на Исходниках.RU > C/C++: Прочее > CPaintDC & CClientDC |
Автор: sergeyMJ 29.12.01, 13:23 |
Господа чем отличаются CPaintDC и CClientDC Я заметил, что если в OnPaint методе начинаю рисовать через CClientDC, то он посылает WM_PAINT. Где какой класс нужно использовать Спасибо |
Автор: DmitryRyvkin 30.12.01, 03:48 |
насколько я помню CPaintDC использоать ТОЛЬКО в обработчике OnPaint |
Автор: ADK 03.01.01, 03:26 |
Вот господа, кстати, один из недостатков ОО библиотек, обёртывающих API. Если люди API не знают, они могут написать такую прогу.... У-у-у... Как обрабатывается WM_PAINT на API? PAINTSTRUCT ps; HDC dc = BeginPaint(hwnd, &ps); // Рисуем в DC EndPaint(hwnd, &ps); CPaintDC как раз в конструкторе вызывает BeginPaint, в деструкторе EndPaint и потому может использоваться только в обработчике WM_PAINT. CClientDC вызывает GetDC и ReleaseDC, поэтому не может применяться в OnPaint, а так хоть где... |