〜 インプット 〜
マウスの左右ボタン機能の入れ替え (要USER32.DLL)

マウス左利きの人用にマウスボタン機能を左右入替える設定がコントロールパネルにありますが、
ココではコレと同じ事をAPI関数のSwapMouseButtonを用いて行うサンプルになります。
サンプルのボタンを押下するとマウスボタンの機能が左右入れ替わります。
そのままHSPウィンドウを終了してもボタンの入れ替えは元に戻りませんので、
元に戻すパラメータを付けて処理するかコントロールパネルより戻してください。

尚、API関数SystemParametersInfoでもボタン機能の入れ替えを行うことが可能です。
uiActionuiParampvParam
SPI_SETMOUSEBUTTONSWAP(=0x0021)戻す(=0)、入替(=1)不使用(=0)

repmfunc 入替フラグ
入替フラグマウス機能の入れ替えフラグ(0:元に戻す 1:左右入れ替える)を指定する。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
	ll_libload user, "user32.dll"
	ll_getproc SwapMouseButton, "SwapMouseButton", user

#module
#deffunc repmfunc int
	mref type, 0
	ll_callfunc type, 1, SwapMouseButton@
	return
#global

	objsize 100, 25
	pos 10, 10 : button "左右入替", *replace
	stop

*replace
	func = 1 - func
	repmfunc func
	mes "左右ボタン機能を入替えました"
	stop

repmfunc 入替フラグ
入替フラグマウス機能の入れ替えフラグ(0:元に戻す 1:左右入れ替える)を指定する。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
#uselib "user32.dll"
#func  global SwapMouseButton "SwapMouseButton" int

#module
#deffunc repmfunc int type
	SwapMouseButton type ! 0
	return
#global

	objsize 100, 25
	pos 10, 10 : button gosub "左右入替", *replace
	stop

*replace
	func = 1 - func
	repmfunc func
	mes "左右ボタン機能を入替えました"
	return