在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實現(xiàn)學生管理系統(tǒng)開發(fā)
這篇文章主要為大家詳細介紹了python實現(xiàn)學生管理系統(tǒng)開發(fā),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-07-07
python一維表轉(zhuǎn)二維表的實現(xiàn)示例
本文主要介紹了python一維表轉(zhuǎn)二維表的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2024-07-07
python3.4下django集成使用xadmin后臺的方法
本篇文章主要介紹了python3.4下django集成使用xadmin后臺的方法,具有一定的參加價值,有興趣的可以了解一下2017-08-08
教你使用Python建立任意層數(shù)的深度神經(jīng)網(wǎng)絡
這篇文章主要介紹了Python建立任意層數(shù)的深度神經(jīng)網(wǎng)絡,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-08-08
python pywinauto使用過程及問題小結(jié)
在pywinauto庫中,uia即UIAutomation,是微軟提供的用于用戶界面自動化測試和輔助功能訪問的技術框架,UIAutomation支持自動化腳本與各種UI元素交互,本文給大家介紹python pywinauto使用過程及問題小結(jié),感興趣的朋友一起看看吧2024-10-10

