注册 登录
编程论坛 VC++/MFC

如何将鼠标锁定在一条直线上移动

lqqnjust 发布于 2008-11-22 23:32, 1457 次点击
我知道可以将鼠标锁定在一个矩形呢,可是我如果想让鼠标只能在某个直线方向上移动该怎么办呢。例如画图中按shift健后只能画45度直线。
3 回复
#2
沼泽2008-11-23 00:24
主要是对Y坐标的确定,通过初始点和斜率以及鼠标的当前坐标
就可以确定在45度直线上鼠标的Y坐标
响应鼠标移动消息,并用SetCaretPos(CPoint point)函数对鼠标的位置进行随时设定
#3
debroa7232008-11-24 13:40
在鼠标移动事件响应函数里按需求重设鼠标位置。
使用直线公式,控制范围和斜率,从而控制鼠标位置达到想要的效果。
#4
dayjumpin2013-04-13 23:30
我也遇到了同样的问题,请问你解决了吗
1