Python+PyQt5:停靠组件QDockWidget的实现

python

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

回到顶部