欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Qt 中如何隐藏 QMenu

程序员文章站 2024-02-24 14:10:22
...

Qt 中如何隐藏 QMenu

我最近做的一个项目,需要根据 license 授权来控制软件的一些功能。有些菜单在某些状态下要隐藏起来。这么个简单的需求,折腾了半个多小时。

最开始想的很简单,认为就是一句话就能解决。QMenu 继承自 QWidget,QWidget 的显示隐藏很简单。

    ui->menu->hide();

结果这么写了后毫无反应。后来研究了一下,需要这么写:

ui->menu->menuAction()->setVisible(false);

这里简单说说为啥用 menu->hide() 没反应。其实也不是没反应,而是没有用对地方。一个菜单,平时就是隐藏状态的,我们只有鼠标挪过去它才会显示出来。这时用 hide() 才可以隐藏起来。

相关标签: Qt 编程技术