MFC单文档系统中,随鼠标移动,显示鼠标坐标,但是如何解决刷新问题。
rt,移动鼠标,发现坐标都显示在view中,重叠。具体:在OnMouseMove()中添加了显示后,设置了区域重绘,InvalidateRect(&rect);Updat...
rt,移动鼠标,发现坐标都显示在view中,重叠。
具体:在OnMouseMove()中添加了显示后,设置了区域重绘,
InvalidateRect(&rect);
UpdateWindow();
仍然不能达到效果。
把代码放入OnDraw()也不行。 展开
具体:在OnMouseMove()中添加了显示后,设置了区域重绘,
InvalidateRect(&rect);
UpdateWindow();
仍然不能达到效果。
把代码放入OnDraw()也不行。 展开
3个回答
展开全部
你每次鼠标移动你都把坐标绘制在一个位置,当然重叠了。你在每次绘制坐标之前先把那个位置填充成跟背景颜色一样的颜色,然后再绘制坐标
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
告诉你一个整体的方法:
在onmousemove消息相应函数中,添加以下代码:
int x=point.x;
int y=point.y;
CString str;
str.Format(("%d,%d"),x,y);
CDC *pDC=GetDC();
pDC->TextOut(0,0,str);
ReleaseDC (pDC);
在onmousemove消息相应函数中,添加以下代码:
int x=point.x;
int y=point.y;
CString str;
str.Format(("%d,%d"),x,y);
CDC *pDC=GetDC();
pDC->TextOut(0,0,str);
ReleaseDC (pDC);
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-04-01
展开全部
Invalidate();
UpdateWindow();这样应该可以,不过效率低,你可以鼠标移动时用窗口背景色填充显示坐标的区域,然后在重新显示当前坐标
UpdateWindow();这样应该可以,不过效率低,你可以鼠标移动时用窗口背景色填充显示坐标的区域,然后在重新显示当前坐标
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询