21.09.2007, 12:52 | #1 |
Участник
|
"Резиновая нить" при рисовании на картинке
Здравствуйте , уважаемые коллеги !
Хочу спросить , реализовывал ли кто - нибудь метод рисования "Резиновой нити" в Аксапте . То есть жмякаешь на image левой кнопкой мыши , удерживая кнопку ведешь мышью до определенной точки , и по мере движения динамически перерисовывается прямоугольник который ты хочешь нарисовать . После отпускания кнопки , рисуется закрашенный прямоугольник . В винде я в давние времена делал это так : void CProgressBarPainter:rawTempProgressBar(){ CClientDC dc(GetView()); CPoint point = dc.SetWindowOrg(GetView()->GetScrollPosition( )); CPen pen,*selPen; pen.CreatePen(PS_SOLID,1,GetView()->GetProgressBarColor()); selPen = dc.SelectObject(&pen); dc.SetROP2(R2_NOT); CRect rect(m_initPoint.x,m_initPoint.y,m_currPoint.x,m_bottom_y_coord); dc.MoveTo(rect.left,rect.top); dc.LineTo(rect.right,rect.top ); dc.LineTo(rect.right,rect.bottom); dc.LineTo(rect.left,rect.bottom); pen.DeleteObject(); } Ключевыми здесь являются строки dc.SetROP2(R2_NOT) - инвертированный режим рисования . А вот как это делать в аксапте , с чего начать - не знаю Может кто-нибудь это уже реализовывал и поделится проектиком ? |
|