我嘗試的代碼如下:
from PyQt5 import QtCore, QtGui
from PyQt5.QtWebEngineWidgets import QWebEngineView,QWebEnginePage
from PyQt5.QtCore import QUrl
from PyQt5.QtWidgets import QApplication
app = QApplication(sys.argv)
ui = QWebEngineView()
class global_var:
pagename=""
def load_baidu():
global_var.pagename="baidu"
print("load baidu")
ui.load(QUrl("http://www.baidu.com"))
def load_oschina():
global_var.pagename="oschina"
print("load oschina")
ui.load(QUrl("https://www.oschina.net/"))
def onStart():
print ("Started..." )
def onDone():
print ("load ok---",global_var.pagename)
ui.loadStarted.connect(onStart)
ui.loadFinished.connect(onDone)
load_baidu()
#time.sleep(2)
load_oschina()
ui.showMaximized()
sys.exit(app.exec_())
是想在加載完一個頁面后觸發(fā)loadFinished(),然后運行不同的函數(shù)。問題是我怎么等到上一個網(wǎng)頁加載完,觸發(fā)對應的函數(shù)之后,再加載后邊的網(wǎng)頁。
嘗試很多,最終不能達到預期的效果,接觸編程(python)不久,只能來尋求幫助。
更新:想了想,可以在load_baidu()后加一個阻止進程往下運行的東西(不太會描述),然后等著觸發(fā)loadFinished()然后再解除阻止。不知道有沒有對應的方法?
更新:找到了一個不算太好的解決方法,不算優(yōu)雅,但終究算是能跑起來了,實現(xiàn)我的需求了。
更加好的方法還等著大佬的幫助
import sys,time
from PyQt5 import QtCore, QtGui
from PyQt5.QtWebEngineWidgets import QWebEngineView,QWebEnginePage
from PyQt5.QtCore import QUrl
from PyQt5.QtWidgets import QApplication
run_time=0
app = QApplication(sys.argv)
ui = QWebEngineView()
class global_var:
pagename=""
loadover="no"
def load_baidu():
global_var.pagename="baidu"
print("load baidu")
ui.load(QUrl("http://www.baidu.com"))
# while global_var.loadover=="no":
# pass
# global_var.loadover="no"
def load_oschina():
global_var.pagename="oschina"
print("load oschina")
ui.load(QUrl("https://www.oschina.net/"))
# while global_var.loadover=="no":
# pass
# global_var.loadover="no"
def onStart():
print ("Started..." )
def onDone():
global_var.loadover="yes"
print ("load ok---",global_var.pagename)
global run_time
if run_time==0:
load_oschina()
run_time=1
elif run_time==1:
print("done")
ui.loadStarted.connect(onStart)
ui.loadFinished.connect(onDone)
ui.showMaximized()
load_baidu()
#time.sleep(2)
#load_oschina()
sys.exit(app.exec_())
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達內(nèi)教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學校辦產(chǎn)業(yè)為響應國家深化產(chǎn)教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復興的升級產(chǎn)業(yè)鏈。利用北京大學優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓領(lǐng)域的先行者
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經(jīng)理職務(wù)負責iOS教學及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。