C++ 利用“橡皮筋”技术画出“矩形”。
即鼠标左键按下时,代表绘制矩形开始,并绘制出矩形的左上角处的点,当鼠标左键向右下角移动时,动态地画出一个矩形,鼠标移动,该矩形的右下角也在移动,直到鼠标左键弹起来void...
即鼠标左键按下时,代表绘制矩形开始,并绘制出矩形的左上角处的点,当鼠标左键向右下角移动时,动态地画出一个矩形,鼠标移动,该矩形的右下角也在移动,直到鼠标左键弹起来
void View::OnMouseMove(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
CView::OnMouseMove(nFlags, point);
}
能帮我把移动轨迹的函数补充一下吗 这个不会 展开
void View::OnMouseMove(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
CView::OnMouseMove(nFlags, point);
}
能帮我把移动轨迹的函数补充一下吗 这个不会 展开
1个回答
展开全部
void C**View::DrawDragIcon(CDC *pDC, const POINT &point)
{
const int nRadius = 10;
int nOldMode = pDC->SetROP2(R2_NOTXORPEN);
pDC->MoveTo(point.x - nRadius, point.y - nRadius);
pDC->LineTo(point.x + nRadius, point.y - nRadius);
pDC->LineTo(point.x + nRadius, point.y + nRadius);
pDC->LineTo(point.x - nRadius, point.y + nRadius);
pDC->LineTo(point.x - nRadius, point.y - nRadius);
pDC->SetROP2(nOldMode);
}
1次画出,2次擦除。然后在别的位置画出,再擦除。。。
{
const int nRadius = 10;
int nOldMode = pDC->SetROP2(R2_NOTXORPEN);
pDC->MoveTo(point.x - nRadius, point.y - nRadius);
pDC->LineTo(point.x + nRadius, point.y - nRadius);
pDC->LineTo(point.x + nRadius, point.y + nRadius);
pDC->LineTo(point.x - nRadius, point.y + nRadius);
pDC->LineTo(point.x - nRadius, point.y - nRadius);
pDC->SetROP2(nOldMode);
}
1次画出,2次擦除。然后在别的位置画出,再擦除。。。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询