我目前正在学习/将Maya.cmds
GUI转换为PYQT。学习如何创建“弹出菜单”时遇到了一些问题
QPushButton
上的Maya弹出菜单示例
在Maya.cmds
中,这曾经是我的第二天性,但是自从移至Qt以来,我很难找到有关此的任何信息。我想在此“弹出菜单”中添加复选框,径向选择和QLineEdit
。
答案 0 :(得分:0)
这是我汇总的一个工作版本,我们使用自定义上下文菜单来显示带有所有菜单项的Qmenu。
class MainWindow(QtWidgets.QDialog):
def __init__(self):
super(MainWindow, self).__init__()
self.setWindowTitle("MainWindow")
# C R E A T E L A Y O U T
mainLayout = QtWidgets.QVBoxLayout()
self.setLayout(mainLayout)
# C R E A T E B U T T O N
self.btn = QtWidgets.QPushButton('Right Click Me!')
mainLayout.addWidget(self.btn)
# C O N N E C T P O P U P M E N U T O O U R B U T T O N
self.btn.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
self.btn.customContextMenuRequested.connect(self.showPopup)
# M E N U I T E M S
self.popupMenu = QtWidgets.QMenu()
self.PBSaveFileCB = self.popupMenu.addAction("Click")
# S H O W P O P U P M E N U
def showPopup(self,position):
self.popupMenu.exec_(self.btn.mapToGlobal(position))
def showUI():
ui = MainWindow()
ui.show()
return ui
ui = showUI()