构造一个悬浮的组件, 然后将主要的组件添加到这个悬浮组件上
DockWidget.py
""" 停靠控件(QDockWidget) """ import sys, math from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5.QtCore import * class DockDemo(QMainWindow): def __init__(self): super(DockDemo, self).__init__() self.setWindowTitle("停靠控件(QDockWidget)") self.items = QDockWidget('Dockable', self) self.listWidget = QListWidget() self.listWidget.addItem("item1") self.listWidget.addItem("item2") self.listWidget.addItem("item3") #将列表组件放置在停靠组件上 self.items.setWidget(self.listWidget) #将整个界面设置为一个行编辑框 self.setCentralWidget(QLineEdit()) #一开始就是悬浮的状态 # self.items.setFloating(True) #停靠在界面的右侧 self.addDockWidget(Qt.RightDockWidgetArea, self.items) if __name__ == "__main__": app = QApplication(sys.argv) main = DockDemo() main.show() sys.exit(app.exec_())