マウスマクロ

Logicoolマウスのマクロサンプル - 2文字以上のキーを入力する

投稿日:

Logicoolゲーミングマウスのマクロ(スクリプト)についてサンプルコードをご紹介する記事です。本記事では、2文字以上の文字列(例:abcdefg、logicool など)をキー入力するサンプルをご紹介させていただきます。

2文字以上の文字列をキー入力する場合、例えば abcdefg では a、b、c、d、e、f、g と PressAndReleaseKey 関数などに 1つずつ引数として渡せば 1度で入力することもできます。

PressAndReleaseKey( "a", "b", "c", "d", "e", "f", "g" )

ですが、いちいち 1文字ずつ区切って引数として渡すコードを書くのは面倒ですよね。
そのような場合に使えるサンプルコードをご紹介させていただきます。

サンプルコード

以下は abcdefg という文字列をキーで入力するサンプルです。

function OnEvent(event, arg)

	-- イベントが発生したボタン番号をチェックする
	if arg == 9 and event == "MOUSE_BUTTON_PRESSED" then

		InputString( "abcdefg" )

	end

end

---------------------------------------
-- 文字列を入力する
---------------------------------------
function InputString( iStr )

	for i=1, #iStr do

		-- 数字に合わせたキーを入力する
		PressAndReleaseKey( string.sub( iStr, i, i) )

	end
	
end

コード解説

文字列をキー入力する関数を呼び出す

対象行 : 3 ~ 8 行目
	if arg == 9 and event == "MOUSE_BUTTON_PRESSED" then
 
		InputString( "abcdefg" )
 
	end

番号9 のボタンを押した時、InputString という関数を呼び出しています。
InputString は引数として指定された任意の文字列をキー入力してくれる関数です。あらかじめ用意されている関数ではなく、独自に定義した関数となります。

InputString 関数の定義

対象行 : 12 ~ 24 行目
---------------------------------------
-- 文字列を入力する
---------------------------------------
function InputString( iStr )
	
	~
	
end

引数の iStr で指定された任意の文字列をキー入力する InputString 関数を定義しています。

文字列を 1文字ずつキー入力する

対象行 : 17 ~ 22 行目
	for i=1, #iStr do
 
		-- 数字に合わせたキーを入力する
		PressAndReleaseKey( string.sub( iStr, i, i) )
 
	end

入力対象の文字列 iStr 内の何番目の文字を入力するか指定する添字番号 i を 1 に初期化しています。
また、 #iStr は文字列 iStr のバイト数を示しています。半角文字は 1バイトなので実質文字数とも言えます。裏を返せば本コードは全角文字に対応していませんのでご注意ください。
このサンプルでは入力対象が abcdefg と 7 文字の文字列であるため、i の数値が 1 から 7 になるまで 7回処理されます。

	for i=1, #iStr do
 
		-- 数字に合わせたキーを入力する
		PressAndReleaseKey( string.sub( iStr, i, i) )
 
	end

string.sub は指定した文字列の部分文字列を返す関数です。以下の書式で使われます。

string.sub( 部分的に抽出したい元の文字列, 開始位置, 終了位置)

今回は i番目の文字を 1文字取り出せれば良いので、i番目から i番目まで、という指定の仕方をしています。
そして抽出された 1文字を PressAndReleaseKey 関数に渡してキー入力を行っています。

まとめ

今回のサンプルのポイントは以下の通りです。

  • 文字列を 1文字ずつ取り出して、PressAndReleaseKey 関数などに引数として渡し、キー入力を行う
その他のマクロ(スクリプト)関連ページはこちら

Logicoolゲーミングマウスのマクロ(スクリプト)関連ページ一覧

ディスプレイやキーボード・マウス 汚れていませんか?

皮脂や唾、手垢、汗などでディスプレイやキーボード・マウスが汚れていませんか? 衛生上の問題もありますし、気持ち良く使うためにも、こまめに拭きとってキレイにすることをオススメします。

エレコム クリーナー ウェットティッシュ 液晶用

  • 超極細分割繊維をメッシュ状に加工した不織布を採用し、やさしく拭くだけで汚れをしっかり落とす
  • 拭き跡が残りにくい
  • 帯電防止効果で拭いた後にホコリがつきにくい
  • ディスプレイの表面加工を傷めないノンアルコールタイプ

液晶用と書いてありますが、キーボード・マウスなどもキレイにできますし、タブレットやスマホなどにも使えます。
大容量なので 1つ置いておくだけでも、気付いた時にすぐ掃除ができて便利です。

おすすめのゲーミングマウス

超高速FPSゲーミングマウス(ボタン: 8 個)

Logicool ロジクール ゲーミング マウス G402

  • 500IPSを超えるトラッキング速度
  • 8個のプログラム可能なボタン
  • ボタンによるDPIの素早い切り替え
  • 1msのレポートレート
  • 高速なクリック(連打)を実現

高パフォーマンスのゲーミングマウス(ボタン: 11 個)

Logicool ロジクール ゲーミング マウス G502 HERO

  • 400IPSを超えるトラッキング速度
  • 11個のプログラム可能なボタン
  • 100~16,000の全DPIでゼロスムージング、ゼロフィルタリング、ゼロアクセラレーションを達成
  • 1msのレポートレート
  • マウスの重さを調整可能

15 個のプログラム可能なボタンを持つ高性能ワイヤレスマウス

Logicool G ゲーミングマウス ワイヤレス G604 ブラック

  • 400IPSを超えるトラッキング速度
  • 15個のプログラム可能なボタン
  • 100~16,000の全DPIでゼロスムージング、ゼロフィルタリング、ゼロアクセラレーションを達成
  • 1msのレポートレート
  • ワイヤレス

カスタマイズ可能な 20 個ものボタンを備える MMO 向けゲーミングマウス

Logicool ロジクール ゲーミング マウス G600t

  • MMO に最適な 20個のプログラム可能なボタン
  • 親指だけで 12個のボタンを瞬時に押せるサムパネル
  • 1msのレポートレート

スポンサーリンク

そういえば買いたい物があったんだった、日用品補充しなきゃ、などがあれば





おすすめ記事

1
Logicool(ロジクール)のゲーミングマウスではマクロを作って自動的な操作を実現することができます。 ボタン 1 つ押すだけで複雑な操作が自動で行えるようになり、定型的な操作を効率良く楽に行えるよ ...
2
バウヒュッテ(Bauhutte)のゲーミングチェア : RS-950RR の使用感などをレポートさせていただきたいと思います。一般的なオフィスチェアよりも断然座り心地が良く、私には合っていました。オス ...
3
キーボード・マウスでの操作に慣れているのに、PS4 や Xbox のコントローラで FPS/TPSゲームをプレイするとうまく操作できず、歯がゆい思いをされていないでしょうか。ゲームソフト側が対応してい ...

-マウスマクロ

Copyright© ArekoReport , 2020 All Rights Reserved.