0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

XLibでマウスの位置を右下に移動する。

Posted at

マウスを見えない位置に移動したい!

ラズベリーパイでデジタルサイネージを作ったりすると、間抜けなことにマウスが表示されていることに気づいたので、XLibを使ってマウスを右下に移動するプログラムを作ってみました。

もちろんX-WindowはLinuxベースなので、Linuxベースのシステムであれば動作します。

必要なもの

root権限で以下のライブラリをインストール
apt install libx11-dev

ソース

mld.c
#include <stdio.h>
#include <unistd.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>

int main()
{
	Display *d;
	int wx,wy;
	// Open Display
	d=XOpenDisplay(NULL);

	if (d != NULL) {
		// Get screen width and height
		wx = WidthOfScreen(XDefaultScreenOfDisplay(d));
		wy = HeightOfScreen(XDefaultScreenOfDisplay(d));
		// Move mouse pointer
		XWarpPointer(d, None, DefaultRootWindow(d), 0,0,0,0,wx,wy);
		XFlush(d);
		// Close Display
	} else {
		printf("Can't Open Display!!\n");
		return 1;
	}

	return 0;
}

コンパイル方法

ソースはこれだけなのでMakefileなどは必要ない!

cc mld.c -o mld -lx11

でmldというコマンドが出来上がります。
xwaylandでも動くのかは不明?

誰かやってみた人は、コメントで教えてください!お願いいたします。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?