0

Windows では、マウスのプライマリ ボタンを交換する Win32 システム コール SwapMouseButton があります。今、Linux と MacOS でマウス ボタンを交換するシステム コールまたは方法が必要です。これでワンクリックマウスボタン交換アプリを作りたいと思います。

Cでこれをどのように行いますか?

4

2 に答える 2

1

これを行うためのシステムコールはないと思います。マウスは、カーネルではなく、X システムによって操作されます。
このシェル コマンドxmodmap -e "pointer = 3 2 1"を実行して左右のボタンを交換し、実行xmodmap -e "pointer = 1 2 3"して元の設定に戻すことができます。また、上記のコマンドをC
から実行するために 使用することもできます。execve

編集

関数は実際にはsystemもっと使いやすいです:

system("xmodmap -e \"pointer = 3 2 1\""); // for swapping buttons
system("xmodmap -e \"pointer = 1 2 3\""); // for restoring functionality
于 2013-02-11T07:02:47.637 に答える