在Qt Designer中toolButton可以通过popupMode设定菜单弹出的模式,但并不能在Qt Designer中指定toolButton的弹出菜单,toolButton只能通过代码来指定弹出菜单。
toolButton设定弹出菜单的方法
语法:
toolButton.setMenu(QMenu)
setMenu为toolButton的方法,参数为QMenu,对应一个菜单。可以通过QMenu构造方法创建,也可以指定一个已有的菜单。
案例:
下面代码中前面部分是QMainWindow类的窗口创建菜单栏、菜单的代码,最后一行是将界面中名字为toolButton的toolButton类型的按钮与创建的菜单关联。
self.menubar = QtWidgets.QMenuBar(MainWindow)
self.menubar.setGeometry(QtCore.QRect(0, 0, 299, 17))
self.menubar.setObjectName("menubar")
self.menusystem = QtWidgets.QMenu(self.menubar)
self.menusystem.setObjectName("menusystem")
self.menusystem.addAction(self.actionQuit)
self.menusystem.addAction(self.actionAbout)
self.toolButton.setMenu(self.menusystem)