这是一个很简单的小程序 😃
戳ABCDE开始
A是鼠标乱飞
BCDE都是卡鼠标位置,只是归位的时间不同
代码如下:
#include<iostream>
#include<cstdlib>
#include<ctime>
#include<windows.h>
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
using namespace std;
int main()
{
int now=0;
POINT p;
cout<<"A,B,C,D,E"<<endl;
cout<<"S:stop"<<endl;
cout<<"Q:quit"<<endl;
srand(time(0));
while(1)
{
if(KEY_DOWN('A'))
now=1;
if(KEY_DOWN('B'))
{
now=2;
GetCursorPos(&p);
}
if(KEY_DOWN('C'))
{
now=3;
GetCursorPos(&p);
}
if(KEY_DOWN('D'))
{
now=4;
GetCursorPos(&p);
}
if(KEY_DOWN('E'))
{
now=5;
GetCursorPos(&p);
}
if(KEY_DOWN('S'))
now=0;
if(KEY_DOWN('Q'))
break;
if(now==1)
SetCursorPos(rand()%1366,rand()%768);
if(now==2)
{
SetCursorPos(p.x,p.y);
Sleep(1);
}
if(now==3)
{
SetCursorPos(p.x,p.y);
Sleep(10);
}
if(now==4)
{
SetCursorPos(p.x,p.y);
Sleep(100);
}
if(now==5)
{
SetCursorPos(p.x,p.y);
Sleep(1000);
}
}
}
本代码用到了C++中的Windows.h库。
这个库大家可能都知道,但可能只用到了Sleep函数。
其实,Windows.h库里还有不少有趣的东西。
代码中用到的有:
- POINT
- 这种类型的变量里只有两个数据:x和y,表示点的位置。
- GetCursorPos()
- 获取鼠标的位置,参数为一个LPPOINT型变量。
- 使用方式详见代码。
- SetCursorPos()
- 设置鼠标的位置,参数为x和y,分别表示鼠标的横坐标和纵坐标。
That’s all~
f ( x ) = l o g 2 s i n ( x ) f(x)=log_2sin(x) f(x)=log2sin(x)