Как отправить нажатие клавиши с модификатором сдвига?
Это немного вопрос новичка, но тем не менее. Итак, в основном я хочу отправить нажатие клавиши с помощью библиотеки DigiKeyboard, но с зажатым сдвигом. Я просмотрел код и увидел этот комментарий в scancode-ascii-table.h:
// Формат: старший значащий бит указывает, следует ли отправлять скан-код с модификатором сдвига
remaining 7 bits are to be used as scan code number.
Я не очень понимаю, где это указывать, будь то при вызове функции sendKeyStroke или где-то в коде. Помощь приветствуется.
@Blupper, 👍0
Обсуждение1 ответ
Лучший ответ:
▲ 0
Я никогда не пользовался этой библиотекой, но в заголовочном файле есть вот такие константы для модификаторов:
#define MOD_CONTROL_LEFT (1<<0)
#define MOD_SHIFT_LEFT (1<<1)
#define MOD_ALT_LEFT (1<<2)
#define MOD_GUI_LEFT (1<<3)
#define MOD_CONTROL_RIGHT (1<<4)
#define MOD_SHIFT_RIGHT (1<<5)
#define MOD_ALT_RIGHT (1<<6)
#define MOD_GUI_RIGHT (1<<7)
и функция
void sendKeyStroke(byte keyStroke, byte modifiers)
поэтому я бы использовал это, чтобы отправить ключ с Shift вот так
sendKeyStroke(KEY_F2, MOD_SHIFT_LEFT);
,
@Juraj
Ооооо спасибо! Это отлично работает!, @Blupper
Смотрите также:
- Связь последовательного порта Digispark
- Библиотеки I2C для ATTiny85?
- Можно ли подключить экран SD-карты к плате Digispark ATtiny85?
- Почему DigiSpark не распознается автоматически на других компьютерах?
- Digispark ATtiny 85 - не распознается как HID устройство
- Открытие программы в administrator с помощью Arduino (DigiSpark / DigiSparkKeyboard)
- Клавиатура Digispark ATtiny85
- Почему DigiKeyboard.print и println меняют строку?
что для вас значит «самый значащий бит»?, @jsotola