求调
  • 板块灌水区
  • 楼主lyclyclyc1234
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/10/2 10:20
  • 上次更新2024/10/2 13:20:33
查看原帖
求调
461855
lyclyclyc1234楼主2024/10/2 10:20

想做个键盘控制鼠标,但是一按q键就崩,个人认为是变量b的问题但不会改,求助,玄关,谢谢!

#include<bits/stdc++.h>
#include<windows.h>
#include<ctime>
#define kd(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
using namespace std;
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
    HANDLE handle;
	handle=GetStdHandle(STD_OUTPUT_HANDLE);
	HWND hWnd=GetConsoleWindow();
    double sx=GetSystemMetrics(SM_CXSCREEN)/2;
	double sy=GetSystemMetrics(SM_CYSCREEN)/10*9;
	double n,m,q=1,a;LPPOINT b;
	cout<<"速度:";
	cin>>n;
	cout<<"慢速模式速度(shift键):";
	cin>>m;
	cout<<"关黑窗口关程序,点击Q键暂时取消控制,再点恢复";
	while(1){
		if(kd(VK_SHIFT)){
			a=m;
		}else{
			a=n;
		}if(kd(81)){
			sx=double(b->x);
			sy=double(b->y);
			q=1-q;
			Sleep(500);
		}Sleep(1);
		if(q){
			SetCursorPos(sx,sy);
			if(kd(VK_UP)||kd(VK_DOWN)||kd(VK_LEFT)||kd(VK_RIGHT)){
				if(kd(VK_DOWN)){
					sy+=a;
				}if(kd(VK_UP)){
					sy-=a;
				}if(kd(VK_LEFT)){
					sx-=a;
				}if(kd(VK_RIGHT)){
					sx+=a;
				}
			}
		}else{
			GetCursorPos(b);
		}
	}
    return 0;
}
2024/10/2 10:20
加载中...