创建右键菜单pyQT Maya
Posted
技术标签:
【中文标题】创建右键菜单pyQT Maya【英文标题】:Create right click menu pyQT Maya 【发布时间】:2018-10-05 05:12:49 【问题描述】:我目前正在学习/将我的Maya.cmds
GUI 转换为 PYQT。我在学习如何创建“弹出菜单”时遇到了一些问题
QPushButton
上的 Maya 弹出菜单示例
在Maya.cmds
中,这对我来说是第二天性,但自从搬到 Qt 后,我在查找任何有关这方面的信息时遇到了问题。我想在这个“弹出菜单”中添加复选框、径向选择和QLineEdit
。
【问题讨论】:
这里的前五个链接:google.com/search?q=pyqt+maya 例如danostrov.com/2012/10/27/…, 我有点晚了,但是右键菜单并不是 Maya 特有的。搜索如何做一个 Qt 上下文菜单 谢谢,我已经找到了方法,很快就会发布答案。 【参考方案1】:这是我整理的一个工作版本,我们正在使用自定义上下文菜单来显示我们的 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()
【讨论】:
以上是关于创建右键菜单pyQT Maya的主要内容,如果未能解决你的问题,请参考以下文章
python pyqt5 QTableWidget 添加右键菜单