Python+PyQt5:停靠组件QDockWidget的实现
QMainWindow主窗体中放置停靠组件QDockWidget的实现流程:
第一步:创建QMainWindow窗体,这是承载QDockWidget的主体
第二步:创建QDockWidget组件实例,设置停靠位置和显示特征,如是否允许浮动和自由移动位置
第三步:因为QDockWidget创建时是空的一个组件,必须在上面放置其他的GUI控件,因此必须将需要的控件组合放置在一个QWidget中,再将GWidget捆绑到QDockWidget中
第四步:利用QMainWindow的addDockWidget方法,将创建的QDockWidget捆绑至主窗体中
完整代码实现如:
1 class MainWindows(QtWidgets.QMainWindow): # 创立主窗口,继承QMainWindow类2
3 def __init__(self):
4 super(MainWindows, self).__init__() # 显性调用父类构造函数
5 self.setWindowTitle("QtDockWidgets demo")
6 aw = CreateWidget() # 创建一个准备放入dockwidget的窗体控件
7 self.CreateDockWidget(aw) # 创建dock,并将上一步创建的QWidget放入dock中
8
9
10 def CreateDockWidget(self, widget): # 定义一个createDock方法创建一个dockwidget
11 dock = QtWidgets.QDockWidget("selectQuote") # 实例化dockwidget类
12 dock.setWidget(widget) # 带入的参数为一个QWidget窗体实例,将该窗体放入dock中
13 dock.setObjectName("selectQuote")
14 dock.setFeatures(dock.DockWidgetFloatable|dock.DockWidgetMovable) # 设置dockwidget的各类属性
15 self.addDockWidget(QtCore.Qt.LeftDockWidgetArea, dock) # 设置dockwidget放置在QMainWindow中的位置,并且将dockwidget添加至QMainWindow中
运行代码,调用主窗口:
1 app = QtWidgets.QApplication(sys.argv)2
3 aw = MainWindows()
4 aw.showMaximized()
5
6 app.exec_()
以上是 Python+PyQt5:停靠组件QDockWidget的实现 的全部内容, 来源链接: utcz.com/z/387494.html