欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

pyqt5的QWebEngineView 使用模板的方法

 更新時(shí)間:2018年08月18日 09:35:51   作者:一心獅  
這篇文章主要介紹了pyqt5的QWebEngineView 使用模板的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

說(shuō)明1:關(guān)于QWebEngineView

pyqt5 已經(jīng)拋棄 QtWebKit和QtWebKitWidgets,而使用最新的QtWebEngineWidgets。

QtWebEngineWidgets,是基于chrome瀏覽器內(nèi)核引擎的。

說(shuō)明2:關(guān)于左鍵點(diǎn)擊頁(yè)面跳轉(zhuǎn)

其中,最讓糾結(jié)的就是實(shí)現(xiàn)左鍵點(diǎn)擊頁(yè)面跳轉(zhuǎn)了。

在chrome瀏覽器上,有些頁(yè)面,左鍵點(diǎn)擊,會(huì)直接創(chuàng)建一個(gè)新的tab來(lái)呈現(xiàn)網(wǎng)頁(yè)。

在使用QWebEngineView時(shí),如果不做特殊處理,這樣的左鍵點(diǎn)擊,是根本沒(méi)有反應(yīng)的。

那怎么辦?就需要重寫(xiě)QWebEngineView的createWindow方法。

說(shuō)明3:關(guān)于createWindow方法重寫(xiě)

在重寫(xiě)QWebEngineView的createWindow方法時(shí),又有兩種寫(xiě)法。

第一種,是直接在本窗口新建tab的方式。 (不推薦使用這種方式)

注:這種方式有個(gè)問(wèn)題,因?yàn)樾陆ǖ膖ab覆蓋了原來(lái)的tab,所以,原來(lái)tab的所有信息都找不到了,如瀏覽,賬號(hào),密碼等。

class WebEngineView(QWebEngineView):
  # 重寫(xiě)createwindow()
  def createWindow(self, QWebEnginePage_WebWindowType):
    return self

第二種,就是新建窗口的方式了。代碼如下。(推薦使用這種方式)

【如下代碼,完全復(fù)制,直接運(yùn)行,即可使用】

import sys
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtWebEngineWidgets import QWebEngineView

################################################
#######創(chuàng)建主窗口
################################################
class MainWindow(QMainWindow):
  def __init__(self, *args, **kwargs):
    super().__init__(*args, **kwargs)
    self.setWindowTitle('My Browser')
    self.showMaximized()

    self.webview = WebEngineView()
    self.webview.load(QUrl("https://www.baidu.com"))
    self.setCentralWidget(self.webview)

################################################
#######創(chuàng)建瀏覽器
################################################
class WebEngineView(QWebEngineView):
  windowList = []

  # 重寫(xiě)createwindow()
  def createWindow(self, QWebEnginePage_WebWindowType):
    new_webview =  WebEngineView()
    new_window = MainWindow()
    new_window.setCentralWidget(new_webview)
    #new_window.show()
    self.windowList.append(new_window) #注:沒(méi)有這句會(huì)崩潰?。?!
    return new_webview

################################################
#######程序入門(mén)
################################################
if __name__ == "__main__":
  app = QApplication(sys.argv)
  w = MainWindow()
  w.show()
  sys.exit(app.exec_())

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python3.5 處理文本txt,刪除不需要的行方法

    Python3.5 處理文本txt,刪除不需要的行方法

    今天小編就為大家分享一篇Python3.5 處理文本txt,刪除不需要的行方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • 哈工大自然語(yǔ)言處理工具箱之ltp在windows10下的安裝使用教程

    哈工大自然語(yǔ)言處理工具箱之ltp在windows10下的安裝使用教程

    這篇文章主要介紹了哈工大自然語(yǔ)言處理工具箱之ltp在windows10下的安裝使用教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • Python基礎(chǔ)中的的if-else語(yǔ)句詳解

    Python基礎(chǔ)中的的if-else語(yǔ)句詳解

    這篇文章主要為大家詳細(xì)介紹了Python基礎(chǔ)中的的if-else語(yǔ)句,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-02-02
  • Python入門(mén)教程(三十八)Python的NumPy庫(kù)簡(jiǎn)介

    Python入門(mén)教程(三十八)Python的NumPy庫(kù)簡(jiǎn)介

    這篇文章主要介紹了Python入門(mén)教程(三十八)Python的NumPy庫(kù)簡(jiǎn)介,NumPy 是用于處理數(shù)組的 python 庫(kù),它還擁有在線性代數(shù)、傅立葉變換和矩陣領(lǐng)域中工作的函數(shù),需要的朋友可以參考下
    2023-05-05
  • Django URL傳遞參數(shù)的方法總結(jié)

    Django URL傳遞參數(shù)的方法總結(jié)

    這篇文章主要介紹了Django URL傳遞參數(shù)的方法總結(jié),需要的朋友可以參考下
    2016-08-08
  • 使用Matplotlib繪制不同顏色的帶箭頭的線實(shí)例

    使用Matplotlib繪制不同顏色的帶箭頭的線實(shí)例

    這篇文章主要介紹了使用Matplotlib繪制不同顏色的帶箭頭的線實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-04-04
  • Python實(shí)現(xiàn)對(duì)數(shù)坐標(biāo)系繪制與自定義映射

    Python實(shí)現(xiàn)對(duì)數(shù)坐標(biāo)系繪制與自定義映射

    這篇文章主要為大家學(xué)習(xí)介紹了如何利用Python實(shí)現(xiàn)對(duì)數(shù)坐標(biāo)系繪制與坐標(biāo)自定義映射,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2023-08-08
  • python代碼如何轉(zhuǎn)jar包

    python代碼如何轉(zhuǎn)jar包

    這篇文章主要介紹了python代碼如何轉(zhuǎn)jar包問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • python+PyQT實(shí)現(xiàn)系統(tǒng)桌面時(shí)鐘

    python+PyQT實(shí)現(xiàn)系統(tǒng)桌面時(shí)鐘

    這篇文章主要為大家詳細(xì)介紹了python+PyQT實(shí)現(xiàn)系統(tǒng)桌面時(shí)鐘,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • python的正則表達(dá)式和re模塊詳解

    python的正則表達(dá)式和re模塊詳解

    這篇文章主要為大家詳細(xì)介紹了python的正則表達(dá)式和re模塊,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-02-02

最新評(píng)論