在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实现多并发访问网站功能示例
Jun 19 Python
python多线程socket编程之多客户端接入
Sep 12 Python
python实现画圆功能
Jan 25 Python
十分钟利用Python制作属于你自己的个性logo
May 07 Python
解决python nohup linux 后台运行输出的问题
May 11 Python
Django-Rest-Framework 权限管理源码浅析(小结)
Nov 12 Python
python3.6编写的单元测试示例
Aug 17 Python
python常用数据重复项处理方法
Nov 22 Python
python3 实现函数写文件路径的正确方法
Nov 27 Python
使用keras实现非线性回归(两种加激活函数的方式)
Jul 05 Python
Selenium alert 弹窗处理的示例代码
Aug 06 Python
python 爬取天气网卫星图片
Jun 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进程通信基础之信号
2017/02/19 PHP
Linux下快速搭建php开发环境
2017/03/13 PHP
Laravel5.1 框架表单验证操作实例详解
2020/01/07 PHP
CSS中一些@规则的用法小结
2021/03/09 HTML / CSS
如何确保JavaScript的执行顺序 之jQuery.html并非万能钥匙
2011/03/03 Javascript
jquery ajax return没有返回值的解决方法
2011/10/20 Javascript
让ie6也支持websocket采用flash封装实现
2013/02/18 Javascript
用Jquery.load载入页面实现局部刷新
2014/01/22 Javascript
JS获取图片lowsrc属性的方法
2015/04/01 Javascript
js操作DOM--添加、删除节点的简单实例
2016/07/08 Javascript
如何提高javascript加载速度
2016/12/26 Javascript
es6的数字处理的方法(5个)
2017/03/16 Javascript
浅谈webpack打包生成的bundle.js文件过大的问题
2018/02/22 Javascript
微信小程序开发之map地图组件定位并手动修改位置偏差
2019/08/17 Javascript
Vue Components 数字键盘的实现
2019/09/18 Javascript
Vue 电商后台管理项目阶段性总结(推荐)
2020/08/22 Javascript
[02:17]2016完美“圣”典风云人物:Sccc专访
2016/12/03 DOTA
python实现随机密码字典生成器示例
2014/04/09 Python
Python+Opencv识别两张相似图片
2020/03/23 Python
Python爬取qq空间说说的实例代码
2018/08/17 Python
Python爬虫实现获取动态gif格式搞笑图片的方法示例
2018/12/24 Python
使用Python 正则匹配两个特定字符之间的字符方法
2018/12/24 Python
Python os.access()用法实例
2019/02/18 Python
python变量的存储原理详解
2019/07/10 Python
基于python解线性矩阵方程(numpy中的matrix类)
2019/10/21 Python
Pandas时间序列基础详解(转换,索引,切片)
2020/02/26 Python
Python 分布式缓存之Reids数据类型操作详解
2020/06/24 Python
python简单实现插入排序实例代码
2020/12/16 Python
CSS3提交意见输入框样式代码
2014/10/30 HTML / CSS
加拿大著名时装品牌:SOIA & KYO
2016/08/23 全球购物
便利店的创业计划书
2014/01/15 职场文书
五年级下册复习计划
2015/01/19 职场文书
高二数学教学反思
2016/02/18 职场文书
导游词之京东大峡谷旅游区
2019/10/29 职场文书
PyTorch 实现L2正则化以及Dropout的操作
2021/05/27 Python
vue数据字典取键值项目的字典问题
2022/04/12 Vue.js