在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网络编程学习笔记(五):socket的一些补充
Jun 09 Python
Pthon批量处理将pdb文件生成dssp文件
Jun 21 Python
Django模板变量如何传递给外部js调用的方法小结
Jul 24 Python
使用PyQtGraph绘制精美的股票行情K线图的示例代码
Mar 14 Python
在Django的View中使用asyncio的方法
Jul 12 Python
解析Python3中的Import
Oct 13 Python
python实现tail实时查看服务器日志示例
Dec 24 Python
浅谈tensorflow 中tf.concat()的使用
Feb 07 Python
Python request操作步骤及代码实例
Apr 13 Python
TensorFlow中如何确定张量的形状实例
Jun 23 Python
Python趣味入门教程之循环语句while
Aug 26 Python
详解Python小数据池和代码块缓存机制
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
如何删除多级目录
2006/10/09 PHP
PHP无限分类的类
2007/01/02 PHP
php的memcached客户端memcached
2011/06/14 PHP
PHP中的strtr函数使用介绍(str_replace)
2011/10/20 PHP
Yii扩展组件编写方法实例分析
2015/06/29 PHP
PHP中把对象数组转换成普通数组的方法
2015/07/10 PHP
php中static 静态变量和普通变量的区别
2016/12/01 PHP
PHP注释语法规范与命名规范详解篇
2018/01/21 PHP
JavaScript 特殊字符
2007/04/05 Javascript
Jquery中val()表单取值赋值的实例代码
2013/08/15 Javascript
Jquery设置attr的disabled属性控制某行显示或者隐藏
2014/09/25 Javascript
详解JavaScript中Date.UTC()方法的使用
2015/06/12 Javascript
详解JavaScript编程中的数组结构
2015/10/24 Javascript
JS for...in 遍历语句用法实例分析
2016/08/24 Javascript
js 单引号替换成双引号,双引号替换成单引号的实现方法
2017/02/16 Javascript
Vue2组件tree实现无限级树形菜单
2017/03/29 Javascript
AngularJS标签页tab选项卡切换功能经典实例详解
2018/05/16 Javascript
Node.js+ELK日志规范的实现
2019/05/23 Javascript
微信小程序实现上传word、txt、Excel、PPT等文件功能
2019/05/23 Javascript
浅谈JavaScript中的“!!”作用
2020/08/03 Javascript
Python实现ssh批量登录并执行命令
2016/10/25 Python
python 检查文件mime类型的方法
2018/12/08 Python
python中property和setter装饰器用法
2019/12/19 Python
PyQt5 界面显示无响应的实现
2020/03/26 Python
PyCharm2020.1.2社区版安装,配置及使用教程详解(Windows)
2020/08/07 Python
利用CSS3实现动态的二级三级菜单效果实例源码
2017/01/04 HTML / CSS
HTML5中通过li-canvas轻松实现单图、多图、圆角图绘制,单行文字、多行文字等
2018/11/30 HTML / CSS
HTML5 weui使用笔记
2019/11/21 HTML / CSS
怎样客观的做好自我评价
2013/12/28 职场文书
加工操作管理制度
2014/01/19 职场文书
授权委托书(公民个人适用)
2014/09/19 职场文书
机关作风建设心得体会
2014/10/22 职场文书
2014年服务员工作总结
2014/11/18 职场文书
先进班集体事迹材料
2014/12/25 职场文书
升学宴来宾致辞
2015/07/27 职场文书
Python如何配置环境变量详解
2021/05/18 Python