Evgenii Legotckoi
25 февраля 2016 г. 0:02

XKeysymToKeycode

Наименование и аналогичные функции

XStringToKeysym, XKeysymToString, XKeycodeToKeysym, XKeysymToKeycode, XConvertCase - преобразование keysyms

Синтаксис

  1. KeySym XStringToKeysym(char *string);
  2.  
  3. char *XKeysymToString(KeySym keysym);
  4. KeySym XKeycodeToKeysym(Display *display, KeyCode keycode, int index);
  5. KeyCode XKeysymToKeycode(Display *display, KeySym keysym);
  6. void XConvertCase(KeySym keysym, KeySym *lower_return, KeySym *upper_return);

Аргументы

  1. display // Указывает соединение с X Сервером
  2. index // Описывает элемент вектора KeyCode
  3. keycode // Описывает сам KeyCode.
  4. keysym // Описывает директиву KeySym,
  5. // которая будет найдена для преобразования
  6. lower_return // Возвращает строчное значение keysym, или keysym
  7. string // Описывает имя KeySym, которая будет преобразована
  8. upper_return // Возвращает keysym в верхнем регистре или сам keysym

Описание

Стандартные имена KeySym предоставляются из < X11/keysymdef.h > удалением префикса XK_ из каждого имени. KeySym, которые не являются частью стандартной библиотеки Xlib, также могут быть предоставлены данной функцией. Набор клавиш KeySym, которые доступны в данном виде и механизмы, с помощью которых Xlib получает их, зависит от реализации.

Если KeySym имени нет в Host Portable Character Encoding, то результат является зависимым от реализации. Если указанная строка не может быть сравнена с корректным KeySym, то XStringToKeySym вернёт NoSymbol.

Возвращённая строка является статической и не может быть изменена. Возвращённая строка является Host Portable Character Encoding. Если указанная KeySym не определена, то XKeysymToString вернёт NULL.

Функция XKeycodeToKeysym использует внутренние таблицы Xlib и возвращает KeySym определённую для указанного KeyCode и элемента вектора KeyCode. Если ни один символ не определён XKeycodeToKeysym вернёт NoSymbol . Функции XKeycodeToKeysym предшествует расширение XKB. Если вы хотите использовать XKB для поиска KeySym, то Вам следует использовать XkbKeycodeToKeysym .

Если указанная KeySym не определена для какого-либо KeyCode, то XKeysymToKeycode вернёт ноль.

Функция XConvertCase возвращает указанные KeySym в верхнем или нижнем регистре, если KeySym является объектом преобразования.  Однако, указанная KeySym будет возвращена в обоих вариантах. Поддержка преобразования отличного от Latin и Cyrillic KeySym является зависящей от реализации.

Рекомендуемые статьи по этой тематике

По статье задано0вопрос(ов)

0

Вам это нравится? Поделитесь в социальных сетях!

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
  • Последние комментарии
  • Evgenii Legotckoi
    16 апреля 2025 г. 17:08
    Благодарю за отзыв. И вам желаю всяческих успехов!
  • IscanderChe
    12 апреля 2025 г. 17:12
    Добрый день. Спасибо Вам за этот проект и отдельно за ответы на форуме, которые мне очень помогли в некоммерческих пет-проектах. Профессиональным программистом я так и не стал, но узнал мно…
  • AK
    1 апреля 2025 г. 11:41
    Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
  • Evgenii Legotckoi
    9 марта 2025 г. 21:02
    К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…
  • VP
    9 марта 2025 г. 16:14
    Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…