VC绘图,先绘制一定点,然后用MoveTo,LineTo连成曲线,现在当鼠标左键点击原来点时,可以对其移动!

补充:先获取点的位置,然后能实现按住左键时移动该点,直到松开左键得到新位置,最后即将点移动左键弹起处,因为发现很多作图软件都有此功能,但在VC里面实现起来没有思路。请问哪... 补充:先获取点的位置,然后能实现按住左键时移动该点,直到松开左键得到新位置,最后即将点移动左键弹起处,因为发现很多作图软件都有此功能,但在VC里面实现起来没有思路。请问哪位高手做过类似的,应该如何实现,非常感谢!!! 展开
 我来答
望梓厹08v
2011-08-24 · 超过32用户采纳过TA的回答
知道答主
回答量:79
采纳率:0%
帮助的人:45.6万
展开全部
画图程序都做腻了,楼主的问题我来回答吧
响应鼠标左键按下,弹起和鼠标移动消息
添加一个BOOL型变量BL,赋值为FALSE,当鼠标左键按下时设置其TRUE,弹起时为FALSE
设置一个CPoint对象PT用于存放你需要的点

在鼠标按下消息的响应函数中添加:
PT=point;//此处的point为LBUTTONDOWN消息中的参数point

在鼠标移动消息的响应函数中添加:
if(BL)
{
PT=point; //此处的point为MoveMouse消息中的参数point
}

不懂再追问
更多追问追答
追问
先谢谢你的回答!不过可能是我的问题没有说清楚。根据你的意思,能实现只有左键按下后松开时开始绘点,而这点就是你鼠标移动到的最末处。
实际上,我现在做得项目是点击鼠标左键即开始绘图了,也就是说你点击一下左键,就刷新绘制了图形。而现在我想先获取远左键点击时点所在位置,保证我“按住”此点时能移动该点位置,而移动的位置是我左键弹起的位置。这与MATLAB中类似,它能让曲线上点沿着曲线移动
希望兄弟再帮帮我,谢谢
追答
那你就添加两个成员变量m_1,m_2;
点击左键设置BOOL变量QQ为TRUE,弹起为FALSE
在OnDraw()中使用
if(QQ)
{
}

在点击左键时把point保存至m_1中就行啦
不知道我理解的有没有问题,若不对,楼主再问,我再答。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式