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

ハードウェアキーボードのキーを押したままにする (: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())