Запустите QtVirtualKeyboard, используя QQuickWidget

Я пытаюсь заставить пример QtVirtualKeyboard работать с QQuickWidget вместо QQuickView. Для QuickView я использую следующий код main.cpp, который отлично работает для меня:

#include <QQuickView>
#include <QGuiApplication>
#include <QQmlEngine>

int main(int argc, char *argv[])
{
qputenv("QT_IM_MODULE", QByteArray("qtvirtualkeyboard"));

QGuiApplication app(argc, argv);

QQuickView view(QString("qrc:/%2").arg(MAIN_QML));
view.setResizeMode(QQuickView::SizeRootObjectToView);
view.show();

return app.exec();
}

Я сталкиваюсь с проблемами при переходе на QQuickWidgets со следующей реализацией main.cpp:

#include <QQuickWidget>
#include <QApplication>
#include <QQmlEngine>

int main(int argc, char *argv[])
{
qputenv("QT_IM_MODULE", QByteArray("qtvirtualkeyboard"));

QApplication app(argc, argv);

QQuickWidget w(QString("qrc:/%2").arg(MAIN_QML));
w.setResizeMode(QQuickWidget::SizeRootObjectToView);
w.show();

return app.exec();
}

Когда я нажимаю на поля ввода, появляется виртуальная клавиатура, но когда я начинаю печатать на клавиатуре, я получаю сообщение «Метод ввода не установлен», который, похоже, связан с плагином метода ввода. Никакие символы не появляются в полях ввода.
Есть идеи? QML-код не изменился между вышеупомянутыми вариантами main.cpp

Кстати: я использую Linux, GCC, Qt 5.9.0, EGLFS плагин

Спасибо за любые предложения!

С Уважением,
Патрик

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]