是QWebEngineView中央小部件时如何在QWebEngineView的顶部制作QFrame

问题描述 投票:0回答:1

我正在制作无框窗口,因为我想在Web浏览器中像在Chrome中那样制作选项卡,我进行了搜索,因此我需要制作无框窗口,接下来,我需要在其上放置一个QFrame。而且,当它是中央窗口小部件时,我不知道如何将其放置在QtWebEngineView之上;当它不是中央窗口小部件且具有布局时,我尝试将其放置在边框周围。

class MainWindow(QMainWindow):
    def __init__(self, *args, **kwargs):

        super(MainWindow,self).__init__(*args, **kwargs)


        self.setWindowTitle("New Tab")
        self.setWindowIcon(QIcon("browserIcon.ico"))

        self.browser = QWebEngineView()
        self.browser.load(QUrl("https://www.google.com"))

        self.browser.settings().setAttribute(QWebEngineSettings.JavascriptCanOpenWindows, True)
        self.browser.settings().setAttribute(QWebEngineSettings.JavascriptEnabled, True)
        self.browser.settings().setAttribute(QWebEngineSettings.PluginsEnabled, True)
        self.browser.settings().setAttribute(QWebEngineSettings.LocalStorageEnabled, True)
        self.browser.settings().setAttribute(QWebEngineSettings.AutoLoadImages, True)
        self.browser.settings().setAttribute(QWebEngineSettings.AutoLoadIconsForPage, True)
        self.browser.settings().setAttribute(QWebEngineSettings.FullScreenSupportEnabled, True)

        self.browser.page().fullScreenRequested.connect(self.fullScreen)

        self.setWindowFlags(QtCore.Qt.FramelessWindowHint)
        self.setCentralWidget(self.browser)
python pyqt5 qtwebengine
1个回答
0
投票

创建垂直布局。要删除间距,请将布局边距设置为0:

self.verticalLayout.setContentsMargin(0, 0, 0, 0) 
© www.soinside.com 2019 - 2024. All rights reserved.