Виртуальная клавиатура для браузера, основанного на QtWebKit, или как мне получить текущее текстовое поле? - PullRequest
1 голос
/ 30 августа 2009

Я работаю над реализацией виртуальной клавиатуры для браузера на основе QtWebKit. У меня много трудностей с пониманием того, как QtWebKit рисует элементы управления на текущей странице. Сначала я думал, что это экземпляры QLineEdit, но это не так. Погружаясь в реализацию, кажется, что связующий код между Qt и WebKit рисует текстовое поле, используя QStyle и QPainter. К сожалению, я очень новичок в Qt и поэтому не понимаю, где в цикле событий интерпретируются нажатия мыши для этих событий. Я нашел Editor :: canEdit () глубоко в стеке вызовов, и теперь я могу вызвать виртуальную клавиатуру, когда пользователь нажимает на текстовое поле на странице. Затем виртуальная клавиатура ожидала указатель на экземпляр QWidget, но Edito :: canEdit () не несет эту информацию, и я не могу найти где-нибудь, где представлен экземпляр, подобный QWidget. Я действительно в замешательстве, любой совет будет приветствоваться.

Спасибо!

1 Ответ

2 голосов
/ 31 августа 2009

Вы можете получить больше удачи, подключив виртуальную клавиатуру к системе ввода Qt. Найдите «InputMethod» в исходном коде QtWebKit Api, то есть в файлах qweb *. *.

...