This commit is contained in:
2022-12-22 13:08:51 +01:00
parent 751a531425
commit a70fb17b7c
2 changed files with 10 additions and 7 deletions

View File

@ -4,8 +4,8 @@ from PyQt5.QtWidgets import QAction
class BarMenu: class BarMenu:
def __init__(self, bar, name): def __init__(self, bar, name):
self.menu = menu = bar.addMenu(name) self.qmenu = qmenu = bar.addMenu(name)
menu.triggered[QAction].connect(self.on_select) qmenu.triggered[QAction].connect(self.on_select)
self.actions = {} self.actions = {}
def on_select(self, p): def on_select(self, p):
@ -14,11 +14,11 @@ class BarMenu:
func() func()
def addAction(self, name, func): def addAction(self, name, func):
self.menu.addAction(name) self.qmenu.addAction(name)
self.actions[name] = func self.actions[name] = func
def addSeparator(self): def addSeparator(self):
self.menu.addSeparator() self.qmenu.addSeparator()

View File

@ -7,17 +7,20 @@ class RClickMenu:
def __init__(self, obj): def __init__(self, obj):
self.obj = obj self.obj = obj
self.menu = QMenu() self.qmenu = QMenu()
obj.setContextMenuPolicy(Qt.CustomContextMenu) obj.setContextMenuPolicy(Qt.CustomContextMenu)
obj.customContextMenuRequested[QPoint].connect(self.on_show) obj.customContextMenuRequested[QPoint].connect(self.on_show)
def on_show(self): def on_show(self):
pos = QCursor.pos() pos = QCursor.pos()
self.menu.exec(pos) self.qmenu.exec(pos)
def addAction(self, name, func): def addAction(self, name, func):
action = QAction(name, triggered=func, parent=self.obj) # here, parent needs to be set action = QAction(name, triggered=func, parent=self.obj) # here, parent needs to be set
self.menu.addAction(action) self.qmenu.addAction(action)
def addSeparator(self):
self.qmenu.addSeparator()