在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的Tornado框架结合memcached页面改善博客性能
Apr 24 Python
python开发中range()函数用法实例分析
Nov 12 Python
Django验证码的生成与使用示例
May 20 Python
Python机器学习之SVM支持向量机
Dec 27 Python
详解Python自建logging模块
Jan 29 Python
对python 多个分隔符split 的实例详解
Dec 20 Python
python 与服务器的共享文件夹交互方法
Dec 27 Python
关于pytorch多GPU训练实例与性能对比分析
Aug 19 Python
Python 仅获取响应头, 不获取实体的实例
Aug 21 Python
Keras模型转成tensorflow的.pb操作
Jul 06 Python
Python opencv缺陷检测的实现及问题解决
Apr 24 Python
学会Python数据可视化必须尝试这7个库
Jun 16 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学习之function的用法
2012/07/14 PHP
常用PHP框架功能对照表
2014/10/23 PHP
php抓取并保存网站图片的实现代码
2015/10/28 PHP
谈谈PHP中substr和substring的正确用法及相关参数的介绍
2015/12/16 PHP
PHP常见数组函数用法小结
2016/03/21 PHP
setTimeout和setInterval的区别你真的了解吗?
2011/03/31 Javascript
Js四则运算函数代码
2012/07/21 Javascript
jQuery的显示和隐藏方法与css隐藏的样式对比
2013/10/18 Javascript
JQuery控制radio选中和不选中方法总结
2015/04/15 Javascript
自己编写的支持Ajax验证的JS表单验证插件
2015/05/15 Javascript
基于Jquery和html5的7款个性化地图插件
2015/11/17 Javascript
JavaScript实现阿拉伯数字和中文数字互相转换
2016/06/12 Javascript
原生js实现无缝轮播图效果
2017/01/11 Javascript
Bootstrap组合上、下拉框简单实现代码
2017/03/06 Javascript
基于vue2框架的机器人自动回复mini-project实例代码
2017/06/13 Javascript
用React实现一个完整的TodoList的示例代码
2017/10/30 Javascript
js原生方法被覆盖,从新赋值原生的方法
2018/01/02 Javascript
vue实现抖音时间转盘
2019/09/08 Javascript
Vue 自定义指令功能完整实例
2019/09/17 Javascript
javascript(基于jQuery)实现鼠标获取选中的文字示例【测试可用】
2019/10/26 jQuery
vue实现将一个数组内的相同数据进行合并
2019/11/07 Javascript
mpvue 项目初始化及实现授权登录的实现方法
2020/07/20 Javascript
vue+echarts+datav大屏数据展示及实现中国地图省市县下钻功能
2020/11/16 Javascript
Python读写及备份oracle数据库操作示例
2018/05/17 Python
java程序员面试交流
2012/11/29 面试题
毕业生个人的求职信范文
2013/12/03 职场文书
大学生旷课检讨书
2014/01/22 职场文书
《临死前的严监生》教学反思
2014/02/13 职场文书
第一批党的群众路线教育实践活动工作总结
2014/03/03 职场文书
家长学校工作方案
2014/05/07 职场文书
国旗下演讲稿
2014/05/08 职场文书
2014年重阳节老干部座谈会局领导发言稿
2014/09/25 职场文书
2015年试用期工作总结范文
2015/05/28 职场文书
如何制定销售人员薪酬制度?
2019/07/09 职场文书
浅析Python中的套接字编程
2021/06/22 Python
python语言中pandas字符串分割str.split()函数
2022/08/05 Python