重写addAction()以修改pyqt中的字符串和QIcon



我想覆盖pyqt中的函数addAction(),以便每次在我的QMenu类中添加项目时都可以修改我的字符串和图标(如果没有指定,则添加默认的)。这是代码:

Python代码

class Menu(QtWidgets.QMenu):
    def __init__(self, parent=None):
        super(Menu, self).__init__(parent)
        self.addAction("First thing")
        self.addAction("Second Thing")
    def addAction(self, *__args):
        *Modify string and icon

想要的结果是一个包含以下字符串(和一个图标)的菜单:

1. First thing
2. Second Thing

如您所见QAction addAction(self、QIcon图标、QString文本)可以将QIcon作为参数。这就是我创建QMenu:的方式

_menu = QMenu()
#Define action
_add_action     = _menu.addAction(QIcon("imagesadd.png"),"Add")
_remove_action  = _menu.addAction(QIcon("imagesremove.png"),"Remove")
#Asign events to actions
self.connect(_add_action, SIGNAL("triggered()"), self._add_handle)
self.connect(_remove_action, SIGNAL("triggered()"), self._remove_handle)

相关内容

  • 没有找到相关文章

最新更新