Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > Моргание при отрисовке FillEllipse


Автор: smalcom 17.12.2009, 17:20
Доброго дня!
Столкнулся сегодня вот с такой проблемкой: если рисовать эллипс средствами GDI - все нормально, если рисовать с пом. GDI+ - дико моргает, и рисует со смещенными координатами (влево вверх)
Код:
Код

   Graphics graphics(hdc);
   Rect boundRect;
   graphics.GetVisibleClipBounds(&boundRect);
//   Status st = graphics.FillRectangle(&SolidBrush(Color(255, 0, 0, 0)), boundRect);
   Status st = graphics.FillEllipse(&SolidBrush(Color(255, 0, 0, 0)), boundRect);


При этом FillRectangle (закомментарено) рисуется без всяких проблем.
Если сделать вызов Ellipse() от GDI - тоже все норм.
UpdateRect всегда на все окно (делается через Invalidate)
GDI+ проиничен.

Может кто сталкивался - в чем может быть проблема?
Спасибо

Автор: GremlinProg 17.12.2009, 19:53
т.е. если заменить
Код

graphics.GetVisibleClipBounds(&boundRect);

на
Код

::GetClientRect( hwnd, &boundRect );

FillEllipse по прежнему "рисует со смещенными координатами (влево вверх)"?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)