如何在同一个QMenu中添加多个QAction ?

How can I add more than one QAction to same QMenu?

本文关键字:QAction 添加 同一个 QMenu      更新时间:2023-10-16

我试图实现Qt菜单自定义,我给了一个功能来添加相同的QAction不止一次在相同的人民币上下文菜单。但是当我尝试:

myMenu->addAction( myAction );
myMenu->addAction( myAction );

添加两次QAction,菜单上只出现一个QAction实例。为什么我不能有一个以上的QAction实例?有什么技巧可以做到这一点吗?我试图克隆/创建一个具有先前动作所有属性的新动作。但我不知道如何获得/提取QActionsSENDERMEMBER属性。

这是一个深思熟虑的决定。请参阅相关文档:

一个QWidget应该只有一个动作,添加一个它已经有了的动作不会导致相同的动作在小部件中出现两次。

原因可能是没有这样的用例,或者如果有的话,它没有涵盖大多数人想要的。

根据你的评论,MS Outlook允许这个,你试图模仿它…我个人会在用户试图再次向同一个菜单添加相同的操作时,采取警告的方法。