! Nhấn một phím trên bàn phím phần cứng (:press)
Phương thức này có sẵn trong các phiên bản sau 20260805
Khai báo
thành công hay không, thông báo lỗi = đối tượng bàn phím phần cứng:press(mã phím[, thời gian nhấn])
thành công hay không, thông báo lỗi = đối tượng bàn phím phần cứng:press(Usage_Page, Usage_ID[, thời gian nhấn])
Tham số
- mã phím
Chuỗi. Sử dụng cùng bảng ánh xạ tên phím nhưkey.press. - Usage Page
Số nguyên. Các đối tượng bàn phím phần cứng hiện tại chỉ chấp nhận Trang Sử dụng của Bàn Phím/Phím Bấm0x07. - Usage ID
Số nguyên. Biểu tượng phím vật lý, không phải mã hóa ký tự. - thời gian nhấn
Số. Tùy chọn. Thời gian giữ phím, tính bằng mili giây. Mặc định: 10 mili giây.
Giá trị trả về
- thành công hay không
Boolean. Trả vềtruekhi phím được nhấn và thả thành công vàfalsekhi thất bại. - thông báo lỗi
Chuỗi. Thông báo lỗi được trả về khi thao tác thất bại.
Mô tả
Nhấn phím mục tiêu, chờ khoảng thời gian được chỉ định, sau đó thả nó. Trong thời gian chờ, luồng hiện tại sẽ ngầm nhường quyền thực thi; các luồng khác có thể chạy trước khi phương thức trả về.
- Phương thức này giữ nguyên các phím thường và phím bổ trợ đã được giữ trước khi gọi.
- Nếu bàn phím phần cứng đã đang chạy một chuỗi
:presshoặc:send_text, thao tác mới sẽ trả vềfalse, "hardware keyboard is busy". - Đầu vào thất bại không được thử lại thông qua phương thức đầu vào khác.
Ví dụ
local keyboard = assert(key.connect_keyboard())
assert(keyboard:press("a"))
assert(keyboard:press(0x07, 4, 30)) -- Phím A trên bàn phím, giữ trong 30 mili giây
assert(keyboard:disconnect())