Python 在pyqt中将子窗口最小化为选项卡

Python 在pyqt中将子窗口最小化为选项卡,python,tabs,pyqt,widget,qtabwidget,Python,Tabs,Pyqt,Widget,Qtabwidget,我是PyQT的新手,目前正在研究如何在mdi领域实现子窗口。我想知道在PyQT中是否可以最小化子窗口,这样一旦子窗口最小化,关闭/扩展/最小化按钮就会隐藏。默认情况下,以以下方式最小化子窗口组: 我想实现的是基本上没有可见的按钮,只有子窗口的标题-双击标题将展开子窗口 import sys from PyQt4 import QtGui, QtCore from PyQt4.QtCore import * from PyQt4.QtGui import * class MainWi

我是PyQT的新手,目前正在研究如何在mdi领域实现子窗口。我想知道在PyQT中是否可以最小化子窗口,这样一旦子窗口最小化,关闭/扩展/最小化按钮就会隐藏。默认情况下,以以下方式最小化子窗口组:

我想实现的是基本上没有可见的按钮,只有子窗口的标题-双击标题将展开子窗口

 import sys
 from PyQt4 import QtGui, QtCore
 from PyQt4.QtCore import *
 from PyQt4.QtGui import *

 class MainWindow(QMainWindow):
     count = 0

     def __init__(self, parent=None):
         super(MainWindow, self).__init__(parent)
         self.mdi = QMdiArea()
         self.setCentralWidget(self.mdi)
         bar = self.menuBar()

         file = bar.addMenu("File")
         file.addAction("New")
         file.addAction("Cascade")
         file.addAction("Tiled")
         file.triggered[QAction].connect(self.windowAction)
         self.setWindowTitle("MDI demo")

      def windowAction(self, q):

         if q.text() == "New":
             MainWindow.count = MainWindow.count + 1
             sub = QMdiSubWindow()
             sub.setWidget(QTextEdit())
             sub.setWindowTitle("subwindow" + str(MainWindow.count))
             self.mdi.addSubWindow(sub)
             sub.show()

         if q.text() == "cascade":
             self.mdi.cascadeSubWindows()

         if q.text() == "Tiled":
             self.mdi.tileSubWindows()

      def main():
          app = QApplication(sys.argv)
          ex = MainWindow()
          ex.show()
          sys.exit(app.exec_())

 if __name__ == '__main__':
     main()

您可能需要考虑使用QTooWindows或QDOKKEY小部件。您可能需要考虑使用QTooWindows或QDOTCKEY小部件。