PyQT5-setUnifiedTitleAndToolBarOnMac

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

我对setUnifiedTitleAndToolBarOnMac有疑问。我了解这仅适用于QMainWindow。

是否有一种方法可以将其传播到其他小部件。使用以下代码,仍会显示QWidget的图块和工具栏(两次)。

class Ui_MainWindow(object):
    def show_form(self):
        self.EditLabel = QtWidgets.QWidget()
        self.EditLabel.setWindowTitle('Form Title')
        self.EditLabel.show()

    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        MainWindow.setWindowTitle("MainWindow")
        MainWindow.setUnifiedTitleAndToolBarOnMac(True)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setToolTip("")
        self.centralwidget.setObjectName("centralwidget")

        self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_2.setGeometry(QtCore.QRect(80, 210, 113, 32))
        self.pushButton_2.setObjectName("pushButton_2")
        MainWindow.setCentralWidget(self.centralwidget)

        self.retranslateUi(MainWindow)
        self.pushButton_2.clicked.connect(self.show_form)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        self.pushButton_2.setText(_translate("MainWindow", "show"))


if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

enter image description here

pyqt pyqt5
1个回答
0
投票

看起来我可以通过设置解决此问题

self.EditLabel.setWindowFlags(Qt.Dialog)

对于我想要的东西已经足够了。

© www.soinside.com 2019 - 2024. All rights reserved.