gpt4 book ai didi

c++ - 如何在 Qt 中再次使菜单项变灰

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:11:17 24 4
gpt4 key购买 nike

我正在使用 qt 并创建了一个菜单栏,如"file",其中包含一些子菜单项“打开”、“保存”、“另存为”、“关闭”、“退出”。我还创建了诸如“actionNew”、“actionOpen”等 Action 。我对工具栏使用了相同的操作,并使用“disableItems()”函数将菜单和工具栏项禁用到构造函数中,效果很好,工具栏和菜单项显示为灰色。如果我单击子菜单项“新建”,工具栏和菜单项将启用并且不会变灰,这也可以正常工作,但是如果我单击子菜单项“关闭”,则只有工具栏项变灰并且菜单项项目仍然启用 :(。我该如何修复它?希望你能帮助我,抱歉我的英语不好 ;)

MainWindow::MainWindow(QWidget *parent)
:QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
/* disable menu items and tool bar items */
disableItems();
}
void MainWindow::disableItems()
{
ui->actionSave->setEnabled(false);
ui->actionSaveAs->setEnabled(false);
ui->actionClose->setEnabled(false);
}
void MainWindow::enableItems()
{
ui->actionSave->setEnabled(true);
ui->actionSaveAs->setEnabled(true);
ui->actionClose->setEnabled(true);
}
void MainWindow::on_actionNew_triggered()
{
enableItems();
}
void MainWindow::on_actionClose_triggered()
{
disableItems();
}

最佳答案

我遇到了同样的问题。

我很困惑,因为代码的行为不同于 Linux 64(我通常开发的地方)、Windows(客户机器)、Linux 32(旧的开发和备份机器)。然后我意识到版本的差异。

我找到的唯一解决方法是从我的 Ubuntu 发行版附带的默认 QtSDK 升级到最新下载的 from here .

建议检查一下您使用的版本是否可以升级。

HTH

编辑 我注意到他们改变了一些更激进的东西:升级后,菜单栏不再在“顶部屏幕”上共享,而是更传统地在“主窗口”内共享。可能团队忽略了可移植性问题,考虑到他们的广泛目标,这是合理的。

关于c++ - 如何在 Qt 中再次使菜单项变灰,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12769087/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com