-
Notifications
You must be signed in to change notification settings - Fork 0
/
QtWeb.py
43 lines (29 loc) · 1.02 KB
/
QtWeb.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import sys
from PySide.QtCore import QObject, Slot, Signal, QUrl
from PySide.QtGui import QApplication
from PySide.QtWebKit import QWebView, QWebSettings
from PySide.QtNetwork import QNetworkRequest
from Battery import Battery
from Wifi import Wifi
import json
class Application(object):
def show(self):
self.battery = Battery()
self.wifi = Wifi()
self.url = QUrl("qt.html")
self.web = QWebView()
self.web.loadFinished.connect(self.onLoad)
self.web.load(self.url)
self.web.show()
def onLoad(self):
self.page = self.web.page()
self.page.settings().setAttribute(QWebSettings.DeveloperExtrasEnabled, True)
self.frame = self.page.mainFrame()
self.frame.addToJavaScriptWindowObject("battery", self.battery)
self.frame.addToJavaScriptWindowObject("wifi", self.wifi)
self.frame.evaluateJavaScript("isReady()")
self.wifi.loop.run()
app = QApplication(sys.argv)
webapp = Application()
webapp.show()
sys.exit(app.exec_())