在python3中實現(xiàn)更新界面
我就廢話不多說了,直接上代碼吧!
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) # 處理業(yè)務邏輯 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): # 創(chuàng)建線程 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 自動刷新網(wǎng)頁代碼
1、簡介
1.打開網(wǎng)頁
2)實現(xiàn)定時刷新
可以看到 多次自動打開關閉網(wǎng)頁之后,瀏覽的數(shù)量 從 118 自動變成了 119
2、功能實現(xiàn)
1) 一種方法
from time import sleep from selenium import webdriver driver= webdriver.Chrome() # 需要 下載 對應瀏覽器 驅(qū)動到 python 安裝目錄 driver.get("https://blog.csdn.net/qq_27061049/article/details/90577597") # 刷新網(wǎng)址 for i in range(10000): # 刷新次數(shù) driver.refresh() # 刷新網(wǎng)頁 sleep(5) # 五秒一次
2)、另一種方法
目錄
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' # 自定義刷新的網(wǎng)頁 self.load(QUrl(url)) self.showMinimized() #窗口最小化 self.show() self.thread = Worker() # 創(chuàng)建線程實例 self.thread.sinOut.connect(self.reloadWeb) # 信號綁定槽函數(shù) self.thread.start() # 開啟線程 def reloadWeb(self): self.reload() #刷新網(wǎng)頁 class Worker(QThread): sinOut = pyqtSignal() # 創(chuàng)建新的信號,并且有參數(shù) num = 0 def __init__(self, parent=None): # 構(gòu)造方法 創(chuàng)建號對象之后,會自動調(diào)用 super(Worker, self).__init__(parent) def __del__(self): # 析構(gòu)函數(shù) 再對象被刪除 和 回收的時候調(diào)用 self.wait() def run(self): for i in range(1000): # 發(fā)出信號 self.sinOut.emit() # 給信號傳參字符串,并發(fā)送 # 線程休眠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中實現(xiàn)更新界面就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python使用itchat模塊實現(xiàn)群聊轉(zhuǎn)發(fā),自動回復功能示例
這篇文章主要介紹了Python使用itchat模塊實現(xiàn)群聊轉(zhuǎn)發(fā),自動回復功能,結(jié)合實例形式分析了Python基于itchat模塊針對微信信息的發(fā)送、回復等相關操作技巧,需要的朋友可以參考下2019-08-08Python使用monkey.patch_all()解決協(xié)程阻塞問題
這篇文章主要介紹了Python使用monkey.patch_all()解決協(xié)程阻塞問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-04-04Python?matplotlib實戰(zhàn)之箱型圖繪制
箱型圖(Box?Plot),也稱為盒須圖或盒式圖,是一種用作顯示一組數(shù)據(jù)分布情況的統(tǒng)計圖,因型狀如箱子而得名,本文主要為大家介紹了如何使用Matplotlib繪制箱型圖,需要的小伙伴可以參考下2023-08-08Python中cv2.Canny() 函數(shù)使用方法
cv2.Canny() 函數(shù)是 OpenCV 中的邊緣檢測函數(shù)之一,用于檢測圖像的邊緣,它的基本原理是通過計算圖像中每個像素點的梯度值來檢測邊緣,本文通過示例代碼介紹Python中cv2.Canny() 函數(shù)用法,需要的朋友參考下吧2023-07-07