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

pyqt5的QWebEngineView 使用模板的方法

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

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

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

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

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

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

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

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

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

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

在重寫QWebEngineView的createWindow方法時,又有兩種寫法。

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

注:這種方式有個問題,因為新建的tab覆蓋了原來的tab,所以,原來tab的所有信息都找不到了,如瀏覽,賬號,密碼等。

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

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

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

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 = []

  # 重寫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) #注:沒有這句會崩潰!?。?
    return new_webview

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

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

相關(guān)文章

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

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

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

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

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

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

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

    Python入門教程(三十八)Python的NumPy庫簡介

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

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

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

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

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

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

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

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

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

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

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

    python的正則表達式和re模塊詳解

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

最新評論