Evgenii Legotckoi
Evgenii Legotckoi24 февраля 2016 г. 13:02

XKeysymToKeycode

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

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

Синтаксис

KeySym XStringToKeysym(char *string);

char *XKeysymToString(KeySym keysym);
KeySym XKeycodeToKeysym(Display *display, KeyCode keycode, int index);
KeyCode XKeysymToKeycode(Display *display, KeySym keysym);
void XConvertCase(KeySym keysym, KeySym *lower_return, KeySym *upper_return);

Аргументы

display       // Указывает соединение с X Сервером
index         // Описывает элемент вектора KeyCode
keycode       // Описывает сам KeyCode.
keysym        // Описывает директиву KeySym, 
              // которая будет найдена для преобразования
lower_return  // Возвращает строчное значение keysym, или keysym
string        // Описывает имя KeySym, которая будет преобразована
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 является зависящей от реализации.

Рекомендуем хостинг TIMEWEB
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.

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

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
e
  • ehot
  • 31 марта 2024 г. 21:29

C++ - Тест 003. Условия и циклы

  • Результат:78баллов,
  • Очки рейтинга2
B

C++ - Тест 002. Константы

  • Результат:16баллов,
  • Очки рейтинга-10
B

C++ - Тест 001. Первая программа и типы данных

  • Результат:46баллов,
  • Очки рейтинга-6
Последние комментарии
k
kmssr9 февраля 2024 г. 1:43
Qt Linux - Урок 001. Автозапуск Qt приложения под Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Анатолий Кононенко5 февраля 2024 г. 8:50
Qt WinAPI - Урок 007. Работаем с ICMP Ping в Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
EVA
EVA25 декабря 2023 г. 17:30
Boost - статическая линковка в CMake проекте под Windows Ошибка LNK1104 часто возникает, когда компоновщик не может найти или открыть файл библиотеки. В вашем случае, это файл libboost_locale-vc142-mt-gd-x64-1_74.lib из библиотеки Boost для C+…
J
JonnyJo25 декабря 2023 г. 15:38
Boost - статическая линковка в CMake проекте под Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
G
Gvozdik19 декабря 2023 г. 4:01
Qt/C++ - Урок 056. Подключение библиотеки Boost в Qt для компиляторов MinGW и MSVC Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
Сейчас обсуждают на форуме
a
a_vlasov14 апреля 2024 г. 13:41
Мобильное приложение на C++Qt и бэкенд к нему на Django Rest Framework Евгений, добрый день! Такой вопрос. Верно ли следующее утверждение: Любое Android-приложение, написанное на Java/Kotlin чисто теоретически (пусть и с большими трудностями) можно написать и на C+…
Павел Дорофеев
Павел Дорофеев14 апреля 2024 г. 9:35
QTableWidget с 2 заголовками Вот тут есть кастомный QTableView с многорядностью проект поддерживается, обращайтесь
f
fastrex4 апреля 2024 г. 11:47
Вернуть старое поведение QComboBox, не менять индекс при resetModel Добрый день! У нас много проектов в которых используется QComboBox, в версии 5.5.1, когда модель испускает сигнал resetModel, currentIndex не менялся. В версии 5.15 при resetModel происходит try…
P
Pisych27 февраля 2023 г. 11:04
Как получить в массив значения из связанной модели? Спасибо, разобрался:))
AC
Alexandru Codreanu19 января 2024 г. 18:57
QML Обнулить значения SpinBox Доброго времени суток, не могу разобраться с обнулением значение SpinBox находящего в делегате. import QtQuickimport QtQuick.ControlsWindow { width: 640 height: 480 visible: tr…

Следите за нами в социальных сетях