ページ 11

C++のマウス座標を取得について

Posted: 2021年12月09日(木) 21:04
by すめし
C++にてマウスの座標を取得し、特定の座標ごとに処理を行うプログラムを書きたいのですが、常に座標を取得し続けることができません。いろんなサイトのサンプルプログラムなどを試しましたがエラーで実行できませんでした。どなたかやり方を教えてください。

C++のマウス座標を取得について

Posted: 2021年12月09日(木) 22:23
by すめし
C++にてマウスの座標を取得し、特定の座標ごとに処理を行うプログラムを書きたいのですが、常に座標を取得し続けることができません。いろんなサイトのサンプルプログラムなどを試しましたがエラーで実行できませんでした。どなたかやり方を教えてください。

コード:

#include <windows.h>
#include <iostream>


int main() {

 while(1) {


		POINT pt;
		//マウスの現在の座標を取得する
		GetCursorPos(&pt);

		SetCursorPos(pt.x, pt.y);
		printf("X座標%dY座標%d", pt.x, pt.y);

		if(pt.x>500 && pt.y>0){
			printf("何かしらの処理");
		}

	}
	return 0;
}

C++のマウス座標を取得について

Posted: 2021年12月09日(木) 22:23
by すめし
C++にてマウスの座標を取得し、特定の座標ごとに処理を行うプログラムを書きたいのですが、常に座標を取得し続けることができません。いろんなサイトのサンプルプログラムなどを試しましたがエラーで実行できませんでした。どなたかやり方を教えてください。

コード:

#include <windows.h>
#include <iostream>


int main() {

 while(1) {


		POINT pt;
		//マウスの現在の座標を取得する
		GetCursorPos(&pt);

		SetCursorPos(pt.x, pt.y);
		printf("X座標%dY座標%d", pt.x, pt.y);

		if(pt.x>500 && pt.y>0){
			printf("何かしらの処理");
		}

	}
	return 0;
}

Re: C++のマウス座標を取得について

Posted: 2021年12月10日(金) 07:22
by みけCAT
・printf関数を使うため、 #include <cstdio> を追加します
POINT構造体の要素はLONGなので、printf関数の仕様に合わせるためにintにキャストします
・座標を取得したいだけなのにSetCursorPosをするのは意味不明なので、削除します

コード:

#include <windows.h>
#include <iostream>
#include <cstdio>


int main() {

	while(1) {


		POINT pt;
		//マウスの現在の座標を取得する
		GetCursorPos(&pt);

		printf("X座標%dY座標%d", (int)pt.x, (int)pt.y);

		if(pt.x>500 && pt.y>0){
			printf("何かしらの処理");
		}

	}
	return 0;
}