Chuyển tới nội dung chính

! Gõ văn bản bằng bàn phím phần cứng (:send_text)

Phương thức này có sẵn trong các phiên bản sau 20260805

Khai báo

success, err = keyboard:send_text(text[, type_delay_ms, shift_delay_ms])

Tham số

  • text Chuỗi. Văn bản để gõ. Chỉ hỗ trợ các ký tự tiếng Anh, chữ số, khoảng trống, ký tự nửa chiều rộng, và các chuỗi escape "\b", "\r", và "\t".
  • type_delay_ms Số. Tùy chọn. Thời gian trễ giữa các thao tác phím, tính bằng mili giây. Mặc định: 0.
  • shift_delay_ms Số. Tùy chọn. Thời gian trễ khi nhấn hoặc thả Shift, tính bằng mili giây. Mặc định: 0.

Giá trị trả về

  • success Boolean. Trả về true sau khi tất cả văn bản đã được gửi thành công và false trong trường hợp thất bại.
  • err Chuỗi. Thông báo lỗi được trả về khi gửi thất bại.

Mô tả

Sử dụng bản đồ phím US của Lua hiện tại để tạo các tổ hợp phím và Shift. Trong thời gian chờ khi nhập, 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ề.

  • Các ký tự kết quả vẫn bị ảnh hưởng bởi bố cục phím của hệ thống mục tiêu.
  • Phương thức này giữ nguyên các phím thường và các 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 :press hoặc :send_text, thao tác mới sẽ trả về false, "hardware keyboard is busy".
  • Các lần nhập thất bại sẽ không được thử lại thông qua phương thức nhập khác.

Ví dụ

local keyboard = assert(key.connect_keyboard())

assert(keyboard:send_text("Hello"))
assert(keyboard:send_text("Hello", 30, 10))

assert(keyboard:disconnect())