系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 脚本中心 > python > 详细页面

在python3中实现更新界面

时间:2020-02-21来源:系统城作者:电脑系统城

我就废话不多说了,直接上代码吧!


 
  1. from PyQt5.QtCore import QThread , pyqtSignal, QDateTime , QObject
  2. from PyQt5.QtWidgets import QApplication, QDialog, QLineEdit
  3. import time
  4. import sys
  5.  
  6. class BackendThread(QObject):
  7. # 通过类成员对象定义信号
  8. update_date = pyqtSignal(str)
  9.  
  10. # 处理业务逻辑
  11. def run(self):
  12. while True:
  13. data = QDateTime.currentDateTime()
  14. currTime = data.toString("yyyy-MM-dd hh:mm:ss")
  15. self.update_date.emit( str(currTime) )
  16. time.sleep(1)
  17.  
  18. class Window(QDialog):
  19. def __init__(self):
  20. QDialog.__init__(self)
  21. self.setWindowTitle('PyQt 5界面实时更新例子')
  22. self.resize(400, 100)
  23. self.input = QLineEdit(self)
  24. self.input.resize(400, 100)
  25. self.initUI()
  26.  
  27. def initUI(self):
  28. # 创建线程
  29. self.backend = BackendThread()
  30. # 连接信号
  31. self.backend.update_date.connect(self.handleDisplay)
  32. self.thread = QThread()
  33. self.backend.moveToThread(self.thread)
  34. # 开始线程
  35. self.thread.started.connect(self.backend.run)
  36. self.thread.start()
  37.  
  38. # 将当前时间输出到文本框
  39. def handleDisplay(self, data):
  40. self.input.setText(data)
  41.  
  42. if __name__ == '__main__':
  43. app = QApplication(sys.argv)
  44. win = Window()
  45. win.show()
  46. sys.exit(app.exec_())

补充拓展:

python 自动刷新网页代码

1、简介

1.打开网页

2)实现定时刷新

可以看到 多次自动打开关闭网页之后,浏览的数量 从 118 自动变成了 119

在python3中实现更新界面

2、功能实现

1) 一种方法


 
  1. from time import sleep
  2.  
  3. from selenium import webdriver
  4.  
  5. driver= webdriver.Chrome() # 需要 下载 对应浏览器 驱动到 python 安装目录
  6. driver.get("https://blog.csdn.net/qq_27061049/article/details/90577597") # 刷新网址
  7.  
  8. for i in range(10000): # 刷新次数
  9. driver.refresh() # 刷新网页
  10. sleep(5) # 五秒一次

2)、另一种方法

目录

在python3中实现更新界面

1)openweb.py


 
  1. # -*- coding: utf-8 -*-
  2.  
  3. import sys
  4.  
  5. from PyQt5.QtWebEngineWidgets import QWebEngineView
  6. from PyQt5.QtCore import *
  7. from PyQt5.QtWidgets import *
  8.  
  9.  
  10. class WebView(QWebEngineView):
  11. def __init__(self):
  12. super(WebView, self).__init__()
  13. url = 'https://blog.csdn.net/qq_27061049/article/details/89711766' # 自定义刷新的网页
  14. self.load(QUrl(url))
  15. self.showMinimized() #窗口最小化
  16. self.show()
  17. self.thread = Worker() # 创建线程实例
  18. self.thread.sinOut.connect(self.reloadWeb) # 信号绑定槽函数
  19. self.thread.start() # 开启线程
  20.  
  21. def reloadWeb(self):
  22. self.reload() #刷新网页
  23.  
  24. class Worker(QThread):
  25. sinOut = pyqtSignal() # 创建新的信号,并且有参数
  26. num = 0
  27. def __init__(self, parent=None): # 构造方法 创建号对象之后,会自动调用
  28. super(Worker, self).__init__(parent)
  29.  
  30.  
  31. def __del__(self): # 析构函数 再对象被删除 和 回收的时候调用
  32. self.wait()
  33.  
  34. def run(self):
  35. for i in range(1000):
  36. # 发出信号
  37. self.sinOut.emit() # 给信号传参字符串,并发送
  38. # 线程休眠66秒
  39. self.sleep(66)
  40. Worker.num = Worker.num + 1
  41. print (str(Worker.num) + " 次刷新")
  42.  
  43. if __name__ == '__main__':
  44. app = QApplication(sys.argv)
  45. web = WebView()
  46. print('### exec succeed !')
  47. sys.exit(app.exec_())

以上这篇在python3中实现更新界面就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

分享到:

相关信息

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载