Я пишу приложение для встроенного устройства, которое не имеет ввода мыши. Веб-браузер очень простой и не имеет кнопок, адресной строки, файловой панели и т. Д. На данный момент он просто загружает веб-страницу. Эта веб-страница использует JavaScript для отлова событий нажатия клавиш для действий.
Проблема, с которой я сталкиваюсь, заключается в том, что при загрузке браузера нажатия клавиш не фиксируются. Я проследил эту проблему до того, что я считаю проблемой фокусировки. Когда браузер загружается, у него нет фокуса, пока в приложении не произойдет щелчок мышью. Поскольку у меня нет мыши, этот первоначальный щелчок не может произойти.
Как я могу убедиться, что приложение браузера сфокусировано правильно, так что, когда я запускаю его из терминала или скрипта, оно сразу же получает фокус и ключевые события могут происходить соответственно?
Мой код выглядит следующим образом:
#!/usr/bin/env python
import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *
app = QApplication(sys.argv)
web = QWebView()
web.showFullScreen()
web.load(QUrl("http://www.google.com"))
sys.exit(app.exec_())
QWidget.setFocus () не работал, при условии, что я использовал его правильно. Любая помощь приветствуется. Спасибо