PyQt5 创建窗口并调用浏览器控件

本文介绍了如何在PyQt5中创建一个包含浏览器控件的窗口,并提供了解决'PyQt5.QtWebEngineWidgets'缺失的解决方案,以及如何添加地址栏、标签页管理和高级功能,如视频播放支持和多窗口操作。

PyQt5在一个窗口中创建一个浏览器控件

如果报错 No module named ‘PyQt5.QtWebEngineWidgets’,在库中添加 PyQtWebEngine 这个库。(命令:pip install PyQtWebEngine)

from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWebEngineWidgets import *  # 导入浏览器的包
import sys
from PyQt5.QtWidgets import *


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        # MainWindow.setObjectName("MainWindow")  # 设置对象名称
        MainWindow.resize(800, 600)  # 主窗口大小
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        # self.centralwidget.setObjectName("centralwidget")

        # todo 这一段是浏览器控件代码
        # from PyQt5.QtWebEngineWidgets import *  # 导入浏览器的包
        self.webView = QWebEngineView(self.centralwidget)
        # (左边离窗口距离, 右边离窗口距离, 浏览器的宽度, 浏览器的高度)
        self.webView.setGeometry(QtCore.QRect(50, 50, 700, 500))  # (50 左边, 50 右边, 700 宽, 500 高)
        # 设置浏览器的默认地址
        self.webView.setUrl(QtCore.QUrl("https://www.baidu.com/"))  
        # self.webView.setObjectName("浏览器")
        MainWindow.setCentralWidget(self.centralwidget)


if __name__ == "__main__":
    # 创建QApplication类的实例
    app = QApplication(sys.argv)
    # 创建一个窗口
    mainWindow = QMainWindow()
    # 调用Ui_MainWindow类
    ui = Ui_MainWindow()
    # 将Ui_MainWindow下的setupUi方法显示在mainWindow上
    ui.setupUi(mainWindow)
    # 显示窗口
    mainWindow.show()
    # 进入程序的主循环,并通过exit函数确保主循环安全结束
    sys.exit(app.exec_())

方式二、转载

博主给的Python及环境版本
在这里插入图片描述
完整项目
链接: https://pan.baidu.com/s/13s-MQKNPOurS1PBLMHZkoQ
提取码: 1q25

from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtWebEngineWidgets import *
import sys
 
 
class WebView(QWebEngineView):
    def __init__(self, parent):
        super().__init__(parent)
    
 # 调用点击的链接,如果没有返回的链接,浏览器不会跳转
    def createWindow(self, webWindowType):
        return main_demo.browser
 
 
class MainDemo(QMainWindow):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.setWindowTitle('MWB浏览器')
        self.setWindowIcon(QIcon('icons/penguin.png'))
        self.resize(800, 500)
        self.show()
        # 添加URL地址栏
        self.urlbar = QLineEdit()
        
评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值