Qt Virtual Keyboard — это библиотека предоставляющая виртуальную экранную клавиатуру. Она входит в библиотеку Qt начиная с Qt 5.7. Точнее, она и раньше входила, но была доступна только в коммерческой версии.
По умолчанию клавиатура из официальной сборки Qt поддерживает только английскую раскладку. Если нужны раскладки на других языках, то проект Qt Virtual Keyboard нужно пересобрать.
Далее приводится инструкция по сборке Qt Virtual Keyboard и добавлению русской раскладки в Линукс. Все действия выполняются в консоле. Для Виндовс инструкция не приводится, но она похожа.
Библиотека Qt должна быть установлена вместе с исходным кодом. Для этого при установке нужно отменить пункт Sources.
Создадим папку для сборки и перейдем в нее.
mkdir /tmp/build-qtvirtkb cd /tmp/build-qtvirtkb
Создадим переменную, содержащую путь к папке, в которой установлен Qt.
QTDIR=/opt/Qt5.9.1/5.9.1
Переменная нужна только для того, чтобы далее не прописывать полные пути.
Сконфигурируем проект Qt Virtual Keyboard с помощью qmake.
$QTDIR/gcc_64/bin/qmake "CONFIG += lang-en lang-ru" $QTDIR/Src/qtvirtualkeyboard
Языки раскладок задаются в строке "CONFIG += lang-en lang-ru"
. Таким образом клавиатура будет поддерживать английскую и русскую раскладки. Полный список языков приведен в официальной документации. Если указать"CONFIG += lang-all"
, то клавиатура будет поддерживать все возможные языки.
Соберем проект с помощью make.
make
Сборка занимает некоторое время.
Следующая команда установит новую сборку. Нужно учесть, что будут внесены изменения в официальную сборку Qt. Она заменит файлы клавиатуры на те, которые получены во время новой сборки. Предыдущие файлы невозможно будет восстановить.
sudo make install
Готово. Теперь в клавиатуре будет русская раскладка.
Если нужно изменить раскладки, то нужно пересобрать проект следующими командами.
make distclean $QTDIR/gcc_64/bin/qmake "CONFIG += lang-all" $QTDIR/Src/qtvirtualkeyboard make sudo make install
Первая команда нужна, чтобы очистить сборку.