我想使用evaluateJavaScript命令动态修改我的GUI
我注意到GUI只有在python完成工作后才会更新。我创建了以下示例代码:
基本图形用户界面:
webView = QWebView()
myObj = ExampleClass(webView)
webView.page().mainFrame().addToJavaScriptWindowObject("pyObj", myObj)
webView.setHtml('''
<html>
<body>
<div id="content"></div>
<button onClick="pyObj.example()">start</button>
</body>
</html>
''')
更新Html GUI的Python代码:
class ExampleClass(QtCore.QObject):
def __init__(self, webView):
super(ExampleClass, self).__init__(webView)
self.webView = webView
@QtCore.pyqtSlot()
def example(self):
print("start")
for i in range(0,5):
print(i)
self.webView.page().mainFrame().evaluateJavaScript('document.getElementById("content").innerHTML = "'+str(i)+'";')
time.sleep(1)
目标:按下“开始”按钮后,我希望看到数字0 1 2 3 4按顺序出现在我的GUI中,每秒钟一个。 当前结果:按下“开始”按钮5秒钟后,什么也没有发生,然后数字4出现
目前没有回答
相关问题 更多 >
编程相关推荐