在python3中实现更新界面


Posted in Python onFebruary 21, 2020

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

from PyQt5.QtCore import QThread , pyqtSignal, QDateTime , QObject
from PyQt5.QtWidgets import QApplication, QDialog, QLineEdit
import time
import sys
 
class BackendThread(QObject):
 # 通过类成员对象定义信号
 update_date = pyqtSignal(str)
 
 # 处理业务逻辑
 def run(self):
  while True:
   data = QDateTime.currentDateTime()
   currTime = data.toString("yyyy-MM-dd hh:mm:ss")
   self.update_date.emit( str(currTime) )
   time.sleep(1)
 
class Window(QDialog):
 def __init__(self):
  QDialog.__init__(self)
  self.setWindowTitle('PyQt 5界面实时更新例子')
  self.resize(400, 100)
  self.input = QLineEdit(self)
  self.input.resize(400, 100)
  self.initUI()
 
 def initUI(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()
 
 # 将当前时间输出到文本框
 def handleDisplay(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

在python3中实现更新界面

2、功能实现

1) 一种方法

from time import sleep

from selenium import webdriver

driver= webdriver.Chrome() # 需要 下载 对应浏览器 驱动到 python 安装目录
driver.get("https://blog.csdn.net/qq_27061049/article/details/90577597") # 刷新网址

for i in range(10000): # 刷新次数
 driver.refresh() # 刷新网页
 sleep(5) # 五秒一次

2)、另一种方法

目录

在python3中实现更新界面

1)openweb.py

# -*- coding: utf-8 -*-

import sys

from PyQt5.QtWebEngineWidgets import QWebEngineView
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *


class WebView(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() # 开启线程

 def reloadWeb(self):
  self.reload() #刷新网页

class Worker(QThread):
 sinOut = pyqtSignal() # 创建新的信号,并且有参数
 num = 0
 def __init__(self, parent=None): # 构造方法 创建号对象之后,会自动调用
  super(Worker, self).__init__(parent)


 def __del__(self): # 析构函数 再对象被删除 和 回收的时候调用
  self.wait()

 def run(self):
  for i in range(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('### exec succeed !')
 sys.exit(app.exec_())

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

Python 相关文章推荐
Python中的多重装饰器
Apr 11 Python
python插入数据到列表的方法
Apr 30 Python
Python面向对象基础入门之编码细节与注意事项
Dec 11 Python
python实现列表中最大最小值输出的示例
Jul 09 Python
在python中做正态性检验示例
Dec 09 Python
django的模型类管理器——数据库操作的封装详解
Apr 01 Python
利用PyTorch实现VGG16教程
Jun 24 Python
Python如何在单元测试中给对象打补丁
Aug 03 Python
python如何实时获取tcpdump输出
Sep 16 Python
通过案例解析python鸭子类型相关原理
Oct 10 Python
基于OpenCV的路面质量检测的实现
Nov 04 Python
Python 把两层列表展开平铺成一层(5种实现方式)
Apr 07 Python
Python要如何实现列表排序的几种方法
Feb 21 #Python
python用WxPython库实现无边框窗体和透明窗体实现方法详解
Feb 21 #Python
使用Python打造一款间谍程序的流程分析
Feb 21 #Python
python实现堆排序的实例讲解
Feb 21 #Python
Python中的sys.stdout.write实现打印刷新功能
Feb 21 #Python
Python控制台输出时刷新当前行内容而不是输出新行的实现
Feb 21 #Python
python编程进阶之异常处理用法实例分析
Feb 21 #Python
You might like
PHP变量的定义、可变变量、变量引用、销毁方法
2013/12/20 PHP
PHP打开和关闭文件操作函数总结
2014/11/18 PHP
示例详解Laravel的注册重构
2016/08/14 PHP
PHP封装的多文件上传类实例与用法详解
2017/02/07 PHP
php使用自带dom扩展进行元素匹配的原理解析
2020/05/29 PHP
PHP类的自动加载与命名空间用法实例分析
2020/06/05 PHP
PHP基于ip2long实现IP转换整形
2020/12/11 PHP
刷新页面的几种方法小结(JS,ASP.NET)
2014/01/07 Javascript
Jquery中find与each方法用法实例
2015/02/04 Javascript
JavaScript设计模式之工厂模式和构造器模式
2015/02/11 Javascript
基于JavaScript实现鼠标箭头移动图片跟着移动
2016/08/30 Javascript
Vue.js 父子组件通讯开发实例
2016/09/06 Javascript
JavaScript调试的多个必备小Tips
2017/01/15 Javascript
利用javascript实现的三种图片放大镜效果实例(附源码)
2017/01/23 Javascript
webpack3+React 的配置全解
2017/08/21 Javascript
angular6.0开发教程之如何安装angular6.0框架
2018/06/29 Javascript
js实现左右两侧浮动广告
2018/07/09 Javascript
详解jquery和vue对比
2019/04/16 jQuery
vue App.vue中的公共组件改变值触发其他组件或.vue页面监听
2019/05/31 Javascript
vue+Element中table表格实现可编辑(select下拉框)
2020/05/21 Javascript
Vue项目打包编译优化方案
2020/09/16 Javascript
python调用cmd复制文件代码分享
2013/12/27 Python
用Python的线程来解决生产者消费问题的示例
2015/04/02 Python
python K近邻算法的kd树实现
2018/09/06 Python
python dlib人脸识别代码实例
2019/04/04 Python
简单了解Python3 bytes和str类型的区别和联系
2019/12/19 Python
python 双循环遍历list 变量判断代码
2020/05/04 Python
浅谈对python中if、elif、else的误解
2020/08/20 Python
IE兼容css3圆角的实现代码
2011/07/21 HTML / CSS
加大码胸罩、内裤和服装:Just My Size
2019/03/21 全球购物
工地安全检查制度
2014/02/04 职场文书
行政部工作岗位职责范本
2014/03/05 职场文书
归途列车观后感
2015/06/17 职场文书
大学生支教感言
2015/08/01 职场文书
告别网页搜索!教你用python实现一款属于自己的翻译词典软件
2021/06/03 Python
Flink 侧流输出源码示例解析
2022/09/23 Servers