跳至主要內容

! 連接全域硬體鍵盤 (key.connect_global_keyboard)

該函式在 20260805 以後版本方可使用

聲明​

硬體鍵盤物件, 錯誤資訊 = key.connect_global_keyboard([設定屬性])

參數​

  • 設定屬性
    表型,可選參數,與 key.connect_keyboard 使用相同的預設屬性和約束。

回傳值​

  • 硬體鍵盤物件
    硬體鍵盤物件,連接成功時返回;連接失敗時返回 nil。
  • 錯誤資訊
    文字型,連接失敗時返回錯誤資訊。

連接失敗時,兩個回傳值合起來為 nil, error。

說明​

建立並連接全域硬體鍵盤。連接等待期間會隱式讓出,在函式返回之前,其他執行緒可能獲得執行機會。

  • 連接後,原有 key.press、key.down、key.up、key.send_text 以及 key(...):press/down/up 的普通鍵盤和數字小鍵盤按鍵會通過該物件輸入
  • 媒體鍵和廠商自訂鍵仍保持原有行為
  • 沒有全域硬體鍵盤時,原有介面行為不變。
  • key.down 與對應的 key.up 會保持配對,即使兩次呼叫之間連接狀態發生變化,也不會造成重復輸入或錯誤釋放
  • 同一時間只能連接一個全域硬體鍵盤。未完成連接時再次呼叫,或已有全域硬體鍵盤時再次連接,都會返回失敗。

範例​

local keyboard, err = key.connect_global_keyboard({
Product = "XXTouch Keyboard",
})
assert(keyboard, err)

key.press("A")
key.send_text("Hello")

local current = key.get_global_keyboard()
assert(current == keyboard)

assert(key.disconnect_global_keyboard())