禁用操作但保持菜单启用

时间:2014-10-07 12:02:00

标签: c++ qt qt4

以下是我在Action项目上创建菜单的方法。

QAction * menuHolder = new QAction("Holder");
menuHolder->setMenu(new QMenu());
menuHolder->menu()->addAction(new QAction("Menu item"));

我的问题是如何禁用menuHolder,但保持与启用的操作关联的菜单(menuHolder附近的箭头enter image description here仍应启用)。 我尝试过类似的东西,但这不起作用:

menuHolder->setEnabled(false);
menuHolder->menu()->setEnabled(true); ?

1 个答案:

答案 0 :(得分:0)

评论后编辑:

您似乎正在寻找解决您不具备的问题的解决方案。您可以像许多其他应用程序一样完美地处理该场景:

如果用户点击save并且没有权限只是通知有关,并且如果您愿意,您可以解释他/她需要使用其他名称保存文件。

在大多数应用程序中,用户会查找File -> Save as

因此,将操作分开,您尝试执行此操作的方式可能会使用户感到困惑,并且永远不会找到操作Save as,sice处于禁用状态下。