在我的应用程序中,我在我的QMenu MainMenu之上构建了一个MainWindow。由于每个人都习惯了这一点,我有以下QMenu主菜单:
文件-编辑- SuperHeavyExpertMenus -设置-帮助
我想隐藏子树SuperHeaverExpertMenus最初,在程序启动,因为它有很多的设置,这可能会混淆初学者的用户。
例如,当设置中的复选框为true时,我想显示带有SuperHeavyExpertMenu的子树。
我可以把上面的QActions的孩子们藏起来,vie QAction:setVisible(false)。但我可以为QMenu这么做吗?
有办法隐藏QMenu吗?
发布于 2016-04-06 20:54:30
如果我正确理解了你的问题,你解决问题的方法是这样的:
ui->menuYouWantToHide->menuAction()->setVisible(false);我希望能有所帮助。
发布于 2019-03-15 10:39:35
Qmenu没有setVisible()或hide(),但是您可以更改标题:
ui->MenuYouWantToHide->setTitle("");这将移除标题,从而删除构成GUI中按钮的“动作”。
发布于 2022-05-04 13:02:12
基于QAction的小部件的可见性和启用性可以通过与它们连接的QAction对象来控制。
Qt文档,甚至最新版本都从公共函数列表中省略了多个访问器函数。相反,它们是在相关的getter中引用的,例如QAction::setVisible列在QAction::isVisible主题下。
https://stackoverflow.com/questions/32375691
复制相似问题