ハードウェアキーボードのキーを押したままにする (:down)
このメソッドは 20260805 以降のバージョンでのみ使用できます
宣言
成功したかどうか, エラー情報 = ハードウェアキーボードオブジェクト:down(キーコード)
成功したかどうか, エラー情報 = ハードウェアキーボードオブジェクト:down(Usage_Page, Usage_ID)
引数
- キーコード
文字列型。
key.pressと同じキー名マッピングを使用します。 - Usage Page
整数型。現在、ハードウェアキーボードオブジェクトが受け付けるのは Keyboard/Keypad Usage Page
0x07のみです。 - Usage ID 整数型。文字コードではなく、物理キーの識別番号です。
戻り値
- 成功したかどうか
ブール型。送信に成功した場合は
true、失敗した場合はfalseを返します。 - エラー情報 文字列型。送信に失敗した場合はエラー情報を返します。
説明
ハードウェアキーボードのキーを押したままにします。その後、対応する
:upを呼び出してキーを解放してください。
- 同じキーボードで
:pressまたは:send_textのシーケンスを実行中の場合、このメソッドはfalse, "hardware keyboard is busy"を返します。 - 同時に押したままにできる通常キーは最大 6 個です。修飾キーはこの数に含まれません。上限を超えると、対象システムは個々のキーを識別できません。
- 送信に失敗した場合は
falseとエラー情報を返し、別の入力方法で自動的に再試行することはありません。
使用例
local keyboard = assert(key.connect_keyboard())
assert(keyboard:press(0x07, 4)) -- A キー
assert(keyboard:down(0x07, 0xE1)) -- 左 Shift キー
assert(keyboard:up(0x07, 0xE1))
assert(keyboard:disconnect())