在python3中实现更新界面
我就废话不多说了,直接上代码吧!
fromPyQt5.QtCoreimportQThread,pyqtSignal,QDateTime,QObject
fromPyQt5.QtWidgetsimportQApplication,QDialog,QLineEdit
importtime
importsys
classBackendThread(QObject):
#通过类成员对象定义信号
update_date=pyqtSignal(str)
#处理业务逻辑
defrun(self):
whileTrue:
data=QDateTime.currentDateTime()
currTime=data.toString("yyyy-MM-ddhh:mm:ss")
self.update_date.emit(str(currTime))
time.sleep(1)
classWindow(QDialog):
def__init__(self):
QDialog.__init__(self)
self.setWindowTitle('PyQt5界面实时更新例子')
self.resize(400,100)
self.input=QLineEdit(self)
self.input.resize(400,100)
self.initUI()
definitUI(self):
#创建线程
self.backend=BackendThread()
#连接信号
self.backend.update_date.connect(self.handleDisplay)
self.thread=QThread()
self.backend.moveToThread(self.thread)
#开始线程
self.thread.started.connect(self.backend.run)
self.thread.start()
#将当前时间输出到文本框
defhandleDisplay(self,data):
self.input.setText(data)
if__name__=='__main__':
app=QApplication(sys.argv)
win=Window()
win.show()
sys.exit(app.exec_())
补充拓展:
python自动刷新网页代码
1、简介
1.打开网页
2)实现定时刷新
可以看到多次自动打开关闭网页之后,浏览的数量从118自动变成了119
2、功能实现
1)一种方法
fromtimeimportsleep
fromseleniumimportwebdriver
driver=webdriver.Chrome()#需要下载对应浏览器驱动到python安装目录
driver.get("https://blog.csdn.net/qq_27061049/article/details/90577597")#刷新网址
foriinrange(10000):#刷新次数
driver.refresh()#刷新网页
sleep(5)#五秒一次
2)、另一种方法
目录
1)openweb.py
#-*-coding:utf-8-*-
importsys
fromPyQt5.QtWebEngineWidgetsimportQWebEngineView
fromPyQt5.QtCoreimport*
fromPyQt5.QtWidgetsimport*
classWebView(QWebEngineView):
def__init__(self):
super(WebView,self).__init__()
url='https://blog.csdn.net/qq_27061049/article/details/89711766'#自定义刷新的网页
self.load(QUrl(url))
self.showMinimized()#窗口最小化
self.show()
self.thread=Worker()#创建线程实例
self.thread.sinOut.connect(self.reloadWeb)#信号绑定槽函数
self.thread.start()#开启线程
defreloadWeb(self):
self.reload()#刷新网页
classWorker(QThread):
sinOut=pyqtSignal()#创建新的信号,并且有参数
num=0
def__init__(self,parent=None):#构造方法创建号对象之后,会自动调用
super(Worker,self).__init__(parent)
def__del__(self):#析构函数再对象被删除和回收的时候调用
self.wait()
defrun(self):
foriinrange(1000):
#发出信号
self.sinOut.emit()#给信号传参字符串,并发送
#线程休眠66秒
self.sleep(66)
Worker.num=Worker.num+1
print(str(Worker.num)+"次刷新")
if__name__=='__main__':
app=QApplication(sys.argv)
web=WebView()
print('###execsucceed!')
sys.exit(app.exec_())
以上这篇在python3中实现更新界面就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。