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

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