我想我的应用程序只包括一个弹出式菜单,一旦它运行立即打开。我尝试了此解决方案,但运行时没有显示任何内容:
#!/usr/bin/env python3
from PyQt5.QtCore import (Qt, QPoint)
from PyQt5.QtGui import QCursor
from PyQt5.QtWidgets import (QApplication, QMenu, QAction)
def clicked():
print("CLICKED")
if __name__ == '__main__':
import sys
app = QApplication(sys.argv)
menu = QMenu()
menu.addAction(QAction("&Click me", triggered=clicked))
menu.exec_(QCursor().pos())
sys.exit(app.exec_())
好吧,我不确定你希望这个菜单有多简约,但这是一个更静态的菜单(也就是说它坚持左右),有多个选项,以防你试图建立某种菜单驱动的窗口平台或只是一个菜单的命令。同时,作为一个类,它可以被导入到任何你可能正在大规模开发的东西中。此外,您还可以通过添加具有不同操作的附加菜单项来扩展菜单,最后它遵循基本的pyqt编程方法
这将显示一个带有单个选项的简单弹出窗口,该窗口在单击时调用
clicked
函数:或者,如果仍要使用
QAction
,请将其定义移到外部:正如ekhumoro在下面的评论中指出的:
注意我使用的是
PySide2
,但它不应该改变任何东西。你知道吗相关问题 更多 >
编程相关推荐