メインコンテンツまでスキップ

! ハードウェアキーボードでテキストを入力する (:send_text)

このメソッドは 20260805 以降のバージョンでのみ使用できます

宣言

成功したかどうか, エラー情報 = ハードウェアキーボードオブジェクト:send_text(テキスト[, キーごとの遅延, Shift キーの遅延])

引数

  • テキスト 文字列型。入力するテキストを指定します。英字、数字、空白、半角文字、および "\b""\r""\t" のみを使用できます。
  • キーごとの遅延 実数型の省略可能な引数。各キー操作の間に入れる遅延をミリ秒単位で指定します。デフォルトは 0 です。
  • Shift キーの遅延 実数型の省略可能な引数。Shift を押す前後または離す前後に入れる遅延をミリ秒単位で指定します。デフォルトは 0 です。

戻り値

  • 成功したかどうか ブール型。すべてのテキストの送信に成功した場合は true、失敗した場合は false を返します。
  • エラー情報 文字列型。送信に失敗した場合はエラー情報を返します。

説明

現在の Lua の米国式キーボードマッピングに基づいて、キーと Shift の組み合わせを生成します。入力処理中の待機では暗黙的に実行権を譲るため、メソッドが戻る前に別のスレッドが実行される場合があります。

  • 実際に入力される文字は、対象システムのキーボードレイアウトにも影響されます。
  • このメソッドは、呼び出し前から押されていた通常キーと修飾キーを保持します。
  • 同じハードウェアキーボードで :press または :send_text のシーケンスを実行中の場合、新しい操作は false, "hardware keyboard is busy" を返します。
  • 送信に失敗しても、別の入力方法で自動的に再試行することはありません。

使用例

local keyboard = assert(key.connect_keyboard())

assert(keyboard:send_text("Hello"))
assert(keyboard:send_text("Hello", 30, 10))

assert(keyboard:disconnect())