在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 05 Python
详解在Python中处理异常的教程
May 24 Python
Python的Flask框架应用程序实现使用QQ账号登录的方法
Jun 07 Python
python登录WeChat 实现自动回复实例详解
May 28 Python
Django高级编程之自定义Field实现多语言
Jul 02 Python
Python Pandas数据结构简单介绍
Jul 03 Python
python将字符串list写入excel和txt的实例
Jul 20 Python
Python pandas实现excel工作表合并功能详解
Aug 29 Python
python自动化测试之异常及日志操作实例分析
Nov 09 Python
Python列表如何更新值
May 27 Python
Python模拟键盘输入自动登录TGP
Nov 27 Python
python 统计代码耗时的几种方法分享
Apr 02 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获取youku视频真实flv文件地址的方法
2014/12/23 PHP
PHP连接MySQL数据的操作要点
2015/03/20 PHP
PHP文件及文件夹操作之创建、删除、移动、复制
2016/07/13 PHP
浅析php-fpm静态和动态执行方式的比较
2016/11/09 PHP
PHP中散列密码的安全性分析
2019/07/26 PHP
PHP fopen中文文件名乱码问题解决方案
2020/10/28 PHP
使用JQuery进行跨域请求
2010/01/25 Javascript
JavaScript Event学习补遗 addEventSimple
2010/02/11 Javascript
javascript中Number对象的toString()方法分析
2014/12/20 Javascript
jQuery元素的隐藏与显示实例
2015/01/20 Javascript
MUI  Scroll插件的使用详解
2017/04/13 Javascript
Vue.js实例方法之生命周期详解
2017/07/03 Javascript
微信小程序自定义组件
2017/08/16 Javascript
Angular4集成ng2-file-upload的上传组件
2018/03/14 Javascript
Vue-不允许嵌套式的渲染方法
2018/09/13 Javascript
JavaScript展开操作符(Spread operator)详解
2019/07/20 Javascript
深入理解令牌认证机制(token)
2019/08/22 Javascript
vue 全局环境切换问题
2019/10/27 Javascript
解决vue2中使用elementUi打包报错的问题
2020/09/22 Javascript
[02:54]DOTA2英雄基础教程 暗影牧师戴泽
2013/12/05 DOTA
Python基于回溯法子集树模板解决全排列问题示例
2017/09/07 Python
Python基于分水岭算法解决走迷宫游戏示例
2017/09/26 Python
如何使用Python 打印各种三角形
2019/06/28 Python
python实现京东订单推送到测试环境,提供便利操作示例
2019/08/09 Python
Python分割训练集和测试集的方法示例
2019/09/19 Python
python/Matplotlib绘制复变函数图像教程
2019/11/21 Python
Python如何使用队列方式实现多线程爬虫
2020/05/12 Python
Keras中 ImageDataGenerator函数的参数用法
2020/07/03 Python
Python字典dict常用方法函数实例
2020/11/09 Python
python使用正则表达式匹配txt特定字符串(有换行)
2020/12/09 Python
英语硕士生求职简历的自我评价
2013/10/15 职场文书
先进党支部事迹材料
2014/01/13 职场文书
开展创先争优活动总结
2014/08/28 职场文书
校外活动方案
2014/08/28 职场文书
党员干部反四风对照检查材料思想汇报
2014/09/14 职场文书
Java网络编程之UDP实现原理解析
2021/09/04 Java/Android