好友
阅读权限10
听众
最后登录1970-1-1
|
本帖最后由 zhcj66 于 2020-2-3 13:43 编辑
答案在3楼
如题,程序运行到menu.exec_(evt.globaPos())时程序崩溃了,新手学习希望帮忙看看什么原因
右击出现
Process finished with exit code 255
import sys
from PyQt5.Qt import *
app = QApplication(sys.argv)
window = Window()
window.setWindowTitle("QPushButton")
window.resize(500,500)
btn = QPushButton(QIcon("xxx.png"), "xxx" , window)
class Window(QWidget):
def contextMenuEvent(self, evt):
print("展示菜单")
menu = QMenu(self)
# 子菜单 最近打开
open_recent_menu = QMenu()
open_recent_menu.setTitle("最近打开")
# 行为动作 新建 打开 分割线 退出
new_action = QAction(QIcon("xxx.png"), "新建")
new_action.triggered.connect(lambda: print("新建文件"))
open_action = QAction(QIcon("xxx.png"), "打开")
open_action.triggered.connect(lambda: print("打开文件"))
exit_action = QAction("退出")
exit_action.triggered.connect(lambda: print("退出软件"))
file_action = QAction("最近_PyThon-GUI编程-PyQt5")
file_action.triggered.connect(lambda: print("打开-PyThon-GUI编程-PyQt5"))
menu.addAction(new_action) # 添加行动
menu.addAction(open_action) # 添加行动
open_recent_menu.addAction(file_action) # 添加行动
menu.addMenu(open_recent_menu) # 添加子菜单
menu.addSeparator() # 添加横线
menu.addAction(exit_action) # 添加行动
# menu.exec_(QPoint(100,100))#直接设置坐标点
menu.exec_(evt.globaPos())#展示在鼠标点击的位置 # QContextMenuEvent
window.show()
sys.exit(app.exec_()) #必须这么加,否则一闪而过
|
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|