底层鼠标LowerMouse
实现键的按下和松开
void Down();
void Up();
实现光标的位移
//(x,y)是矢量,非坐标
void Move(int x,int y);
实现滑轮的滚动
void Wheel(int m);
上层鼠标UpperMouse
模拟真实的单击,双击事件
void Click(Point p);
模拟真实的移动轨迹。
void Move(Point p,int move_v);
模拟拖动
void Drag(Point start,Point end);
部分资料
轨迹函数
Point[] GetSpoor(Point start,Point end);
一些参数
屏幕刷新的频率是30-80HZ,一般是60HZ;
鼠标往电脑发送信息的频率是200-1000HZ;
人移动鼠标的速度为2-5像素/ms;
点击鼠标的确认时间在200ms以下;
双击的确认时间在200-500ms之间。但与机子有关。
Click
void Click(Point p)
{
Move(p,v);
Down(p);
Wait();
Up(p)
}
void Double(Point p)
{
Click();
Wait();
Click();
}
Drag
void Drag(Point start,Point end)
{
Move(start,v);
Down(start);
Move(end,vx);//vx较慢,需要等待拖动的控件
Up(end);
}
代码结构
class LowerMouse
class UpperMouse
{
LowerMouse mouse;
}