LINUX.ORG.RU

Ищу способы получения данных от клавиатуры, мыши


0

0

Пишу программу для консоли.

Ищу разные способы получения нажатия всех клавиш, движений мыши,
нажатий кнопок мыши, колеса мыши.

Пока что нашёл такие способы.

---------------------------

Клавиатура :

Коды терминала (обычный режим) - Отсутствут полный доступ к всем сочетаниям клавиш и некоторым отдельным клавишам.

RAW режим - Хороший способ. Дает доступ ко всем клавишам, их нажатиям и отжатиям.
Но опасен, т. к. получается эксклюзивный доступ и нужно позаботится о возвращении нормального режима клавиатуры. Например создав спец-сервис который будет «если че» при зависании, вылете основной программы возвращать нормальный режим клавиатуры.

Скан коды - это как-бы не нужный режим, т. к. уже есть RAW режим.

Библиотеки SLANG, NCURSES - предоставляют режимы кодов терминала.

/dev/input/ - это крутой способ.
Дает доступ ко всем клавишам, их нажатиям и отжатиям.
Интересен тем что не блокирует клавиатуру !
Из /dev/input/ могут читать множество программ одновременно.
Им пользуется например X Window System.
Но по дефолту дается доступ только для root. Придется перенастроить права доступа к файлу.

---------------------------

Мышь :

gpm - нельзя получить события о прокрутки колесика мыши.

/dev/input/ - Дает данные о колесе мыши.
Но по дефолту дается доступ только для root. Придется перенастроить права доступа к файлу.

---------------------------

Каким ещё способом можно получить события о клавишах, о мыши ?

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.