סטנ*_*ונן 6 c++ qt menu menuitem show-hide
我在Windows7平台上使用Qt5:
Qt Creator版本是:v3.3.2.
Qt版本5.5.1和MinGW 32位.
目前,我在菜单栏中有:
配置 - 报告 - 帮助
我搜索了SO,我发现这是一个可能的答案:不可能隐藏QMenu对象QMenu :: setVisible()?,但它不起作用 ......
所以,我试图删除帮助菜单使用:
ui->menuHelp->setVisible(false);
Run Code Online (Sandbox Code Playgroud)
和:
ui->menuHelp->menuAction()->setVisible(false);
Run Code Online (Sandbox Code Playgroud)
不幸的是,两人都未能隐藏/删除Help
菜单......
拜托,还有其他办法吗?
[码]:
MainWindow::MainWindow(QWidget * parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
this->setWindowFlags(this->windowFlags() & ~Qt::WindowMaximizeButtonHint);
if(!server.listen(QHostAddress("192.168.1.2"), 8001))
return;
if(true) // just testing...
ui->menuHelp->menuAction()->setVisible(false);
}
Run Code Online (Sandbox Code Playgroud)
Evg*_*eny 11
只是为了测试,我添加了3个菜单menuBar
.
然后我尝试了这个:
ui->menu3->menuAction()->setVisible(false);
Run Code Online (Sandbox Code Playgroud)
它的工作方式与预期相同 - 它隐藏起来menu3
.你的问题出在其他地方.
代码ui->menuHelp->setVisible(false);
隐藏菜单,而不是操作menuBar
.例如,当您单击menuBar
菜单上的操作变为可见时.然后你可以用这行代码隐藏它.但是当你直接从构造函数调用它时,菜单仍然是不可见的,所以这段代码什么都不做.