VB6 - 在两点之间平滑移动鼠标指针?

时间:2009-07-01 09:52:21

标签: winapi vb6 mouse

因为我已经完成了任何VB6,所以一直都是yonks ...

我需要控制鼠标指针并在两点之间平滑移动。

最好的方法是GetCursorPosSetCursorPos和一两个计时器的组合,还是有更好的方法?

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

使用带有计时器的SetCursorPos在两点之间移动光标听起来对我来说是最明智的方式。 (为什么你甚至需要使用GetCursorPos?)

您是否希望特别提供其他解决方案?如果没有WinAPI,你肯定无法执行此任务,但可能还有另一个功能可以满足您的需求。

答案 1 :(得分:1)

如上所述,具有计时器的Get / SetCursorPos是票证。值得尝试使用计时器周期和位置增量来获得最大的计时器,以便按照您的要求顺利完成任务,但不能更多。

分隔X和Y的增量,移动较大距离的数字,并使用Bresenham绘制点之间的不可见线。

一个天真的解决方案可能会每次视频刷新移动光标多次,或每步少于4个像素,这将浪费时间。