Python PytQT5 - Windows 按钮移动到其他区域

Python PytQT5 - Windows Buttons move to other area

我正在寻求帮助,我正在使用 PyQT5 及其包含的网络引擎开发网络浏览器,但是,我遇到了一个问题,我似乎找不到解决方法。基本上,我正在尝试将 windows 按钮 - 最小化、更改 windows 大小和关闭按钮移动到工具栏区域,就像 Google Chrome 一样。解释:

Windows 按钮在右侧 - 在 Windows 框架上

现在,我删除 window 框架,这 3 个按钮消失了(它们应该消失):

无Windows帧

现在基本上这就是我想要的,没有框架,但 windows 按钮会移动到 Tab/TabBar 或工具栏。喜欢 Google chrome 有:

Google Chrome 例子

我使用此代码禁用 Window 框架:

def __init__(self, parent=None, *args, **kwargs):
    super(MainWindow, self).__init__(parent, Qt.FramelessWindowHint, *args, **kwargs)

但现在我不知道如何将这三个按钮移动到标签栏或工具栏。我发现我可以使用 "Flags",特别是这三个:

Qt.WindowMinimizeButtonHint
Qt.WindowCloseButtonHint
Qt.WindowMaximizeButtonHint

现在我使用以下代码创建我的选项卡小部件:

    self.tabs = QTabWidget()
    self.tabs.setDocumentMode(True)
    self.tabs.tabBarDoubleClicked.connect(self.tab_open_doubleclick)
    self.tabs.currentChanged.connect(self.current_tab_changed)
    self.tabs.setTabsClosable(True)
    self.tabs.tabCloseRequested.connect(self.close_current_tab)

    self.setCentralWidget(self.tabs)

之后,我创建状态栏和导航栏:

    self.status = QStatusBar()
    self.setStatusBar(self.status)

    navigation_bar = QToolBar('Navigation')
    navigation_bar.setIconSize(QSize(24, 24))
    self.addToolBar(navigation_bar)

之后,我将按钮添加到工具栏 - 停止、重新加载、后退和前进等。

我自己找到了答案,这不是我要找的东西,但它会的。

我禁用了带有标志的框架 - 然后禁用了我之前发布的 3 个标志。然后我在工具栏上创建了 3 个新按钮并将它们的图标更改为 windows 按钮,最后一步是添加回这 3 个按钮的功能,我用 2 个功能完成了。


已解决。