关于画橡皮筋的问题

hugui12345678910 2010-04-18 11:26:50
请各位大侠帮忙,我想在(VC)API中实现橡皮筋画直线或椭圆,而不是在MFC中,请求写那个代码,和SetROP2()的作用和用法。。万分感谢。。。。
...全文
107 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
yonkie 2010-04-23
  • 打赏
  • 举报
回复
额,想问下高手,怎样选中一条线段,选中后并能拖动它?
yonkie 2010-04-23
  • 打赏
  • 举报
回复
这个程序写的这么烦,可以写简单点
tj_swjtu 2010-04-23
  • 打赏
  • 举报
回复
友情帮顶,友情帮顶
hugui12345678910 2010-04-22
  • 打赏
  • 举报
回复
那个画图程序在画图的时候有没有轨迹呢??
hugui12345678910 2010-04-19
  • 打赏
  • 举报
回复
我想要API编写的代码,你会不,可不可以用API写一个程序呢。。。谢谢
soswaidao 2010-04-19
  • 打赏
  • 举报
回复
友情帮顶,友情帮顶
xinfeng2005 2010-04-19
  • 打赏
  • 举报
回复
OnMouseMove

//画框
CClientDC dc(this);
dc.SelectObject(GetStockObject(NULL_BRUSH));
CPen penRed(PS_SOLID,1,RGB(255,0,0));
if(pDoc->m_bDraw && pDoc->m_startPt.x>0 && pDoc->m_startPt.y>0 && !(pDoc->m_iHitValue>0) )
{


CPen *oldPen=dc.SelectObject(&penRed);
int oldS;
oldS=dc.SetROP2(R2_NOTXORPEN);
CRect rect;
rect.left =min(pDoc->m_startPt.x,pDoc->m_endPt.x);
rect.top =min(pDoc->m_startPt.y,pDoc->m_endPt.y);
rect.right =max(pDoc->m_endPt.x,pDoc->m_startPt.x);
rect.bottom =max(pDoc->m_endPt.y,pDoc->m_startPt.y);
// rect.OffsetRect(p);
CRect rectLast=rect;
//dc.Rectangle(rect);
pDoc->m_endPt=point;
rect.left =min(pDoc->m_startPt.x,pDoc->m_endPt.x);
rect.top =min(pDoc->m_startPt.y,pDoc->m_endPt.y);
rect.right =max(pDoc->m_endPt.x,pDoc->m_startPt.x);
rect.bottom =max(pDoc->m_endPt.y,pDoc->m_startPt.y);
// rect.OffsetRect(p);
//dc.Rectangle(rect);
CRect rectCur=rect;
// CBrush b1;
// b1.CreateSolidBrush(RGB(100,100,100));
dc.DrawDragRect(rectCur,CSize(1,1),rectLast,CSize(1,1),NULL,NULL);

dc.SetROP2(oldS);
dc.SelectObject(oldPen);


ReleaseDC(&dc);
}

19,469

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧