在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 相关文章推荐
Linux-ubuntu16.04 Python3.5配置OpenCV3.2的方法
Apr 02 Python
在PyCharm中三步完成PyPy解释器的配置的方法
Oct 29 Python
python DataFrame 取差集实例
Jan 30 Python
Python面向对象之继承和多态用法分析
Jun 08 Python
基于sklearn实现Bagging算法(python)
Jul 11 Python
python实现点击按钮修改数据的方法
Jul 17 Python
python global和nonlocal用法解析
Feb 03 Python
python 使用多线程创建一个Buffer缓存器的实现思路
Jul 02 Python
20行Python代码实现一款永久免费PDF编辑工具的实现
Aug 27 Python
Python3中对json格式数据的分析处理
Jan 28 Python
Python基于argparse与ConfigParser库进行入参解析与ini parser
Feb 02 Python
Python开发五子棋小游戏
May 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 json_encode中文乱码问题的解决办法
2013/09/09 PHP
php版微信公众平台开发之验证步骤实例详解
2016/09/23 PHP
一段批量给页面上的控件赋值js
2010/06/19 Javascript
纯JS实现的批量图片预览加载功能
2011/08/14 Javascript
js将iframe中控件的值传到主页面控件中的实现方法
2013/03/11 Javascript
javascript生成随机数的方法
2014/05/16 Javascript
node.js中的path.resolve方法使用说明
2014/12/08 Javascript
jquery删除指定子元素代码实例
2015/01/13 Javascript
JS实现仿雅虎首页快捷登录入口及导航模块效果
2015/09/19 Javascript
AngularJS中处理多个promise的方式
2016/02/02 Javascript
js 轮播效果实例分享
2016/12/28 Javascript
node.js发送邮件email的方法详解
2017/01/06 Javascript
详解微信小程序 wx.uploadFile 的编码坑
2017/01/23 Javascript
微信小程序中setInterval的使用方法
2017/09/29 Javascript
javascript面向对象三大特征之多态实例详解
2019/07/24 Javascript
js将URL网址转为16进制加密与解密函数
2020/03/04 Javascript
JS时间戳与日期格式互相转换的简单方法示例
2021/01/30 Javascript
[00:35]DOTA2上海特级锦标赛 VP战队宣传片
2016/03/04 DOTA
Python获取电脑硬件信息及状态的实现方法
2014/08/29 Python
寻找网站后台地址的python脚本
2014/09/01 Python
python logging日志模块的详解
2017/10/29 Python
python如何生成网页验证码
2018/07/28 Python
Python使用pyshp库读取shapefile信息的方法
2018/12/29 Python
基于python实现语音录入识别代码实例
2020/01/17 Python
python编写softmax函数、交叉熵函数实例
2020/06/11 Python
一款简洁的纯css3代码实现的动画导航
2014/10/31 HTML / CSS
工程师求职简历的自我评价分享
2013/10/10 职场文书
高一学年自我鉴定范文(3篇)
2014/09/26 职场文书
仓管员岗位职责
2015/02/03 职场文书
应届生求职自荐信范文
2015/03/04 职场文书
护士自我推荐信范文
2015/03/24 职场文书
证券公司客户经理岗位职责
2015/04/09 职场文书
小平小道观后感
2015/06/09 职场文书
2015年物业公司保洁工作总结
2015/10/22 职场文书
基于Redis延迟队列的实现代码
2021/05/13 Redis
Python Django项目和应用的创建详解
2021/11/27 Python