MFC怎么让这句在OnDraw函数里根据鼠标位置显示

voidC**View::OnMouseMove(UINTnFlags,CPointpoint)pDC->Ellipse(point.x,point.y,50,70);/... void C**View::OnMouseMove(UINT nFlags, CPoint point)

pDC->Ellipse(point.x, point.y , 50 , 70); //要显示的是这句,但是我点鼠标时无效

要点鼠标左键的时候,在鼠标移动到的位置上显示,而且不能被重绘刷掉(擦掉)
在OnDraw里加上CPoint point 好象也没用
展开
 我来答
suntsshare
2013-01-07 · TA获得超过180个赞
知道小有建树答主
回答量:178
采纳率:100%
帮助的人:118万
展开全部
第一步:定义一个成员变量,用来记录想显示的点。CPoint m_destPoint = new CPoint(-1,-1);
初始化成无效值,因为还没有点击操作
第二步:在OnMouseDown事件里,判断是鼠标左键时,给m_destPoint赋值。然后调用Invalidate()强制刷新

第三步:在OnDraw()事件里,正常绘制处理之后,判断坐标点是否有效,如果有效,则绘制上该点的信息,比如十字架,圆等。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式