Qt QAction';s图标不';不能在qmen中显示

Qt QAction';s图标不';不能在qmen中显示,qt,qt5,qmenu,qaction,qicon,Qt,Qt5,Qmenu,Qaction,Qicon,我在Qt4有一个工作计划。将其移植到Qt5后,QActions的图标不再显示在QMenu中;只有文本显示。图标在工具栏中显示ok,但在菜单中不显示ok。我已经将应用程序设置为禁用“AA_DontShowIconsInMenus”无效。以下是代码的一部分: pMenuBar = new QMenuBar(this); pMenuBar->setObjectName(QString::fromUtf8("Menu Bar")); pMenuBar->setGeometry(QRect(0

我在Qt4有一个工作计划。将其移植到Qt5后,QActions的图标不再显示在QMenu中;只有文本显示。图标在工具栏中显示ok,但在菜单中不显示ok。我已经将应用程序设置为禁用“AA_DontShowIconsInMenus”无效。以下是代码的一部分:

pMenuBar = new QMenuBar(this);
pMenuBar->setObjectName(QString::fromUtf8("Menu Bar"));
pMenuBar->setGeometry(QRect(0, 0, 800, 27));
MyIcon.addFile(":/images/filenew.ico", QSize(), QIcon::Normal, QIcon::On);
pAction = new QAction(tr("&New"), this);
pAction->setIcon(MyIcon);
pAction->setIconVisibleInMenu(true);
pAction->setShortcuts(QKeySequence::New);
pAction->setStatusTip(tr("New"));
pMenuFile = new QMenu(pMenuBar);
pMenuFile->setObjectName(QString::fromUtf8("File Menu"));
// pMenuFile->menuAction()->setIconVisibleInMenu(true);
pMenuFile->addAction(pAction);
pMenuBar->addAction(pMenuFile->menuAction());
setMenuBar(pMenuBar);

我想不支持
*.ico
,请使用
*.png
试试

您可以检查:
QImageReader::supportedImageFormats()
QImageWriter::supportedImageFormats()

您看到您的“文件菜单”了吗?setObjectName将设置QObject Name属性,但不会设置菜单标题。。。还有,您使用的是哪种操作系统?@Xplatforms,是的,“文件”菜单工作正常。操作系统是Fedora32&Gnome桌面。我把我所有的QICON都改成源于PNG文件,不幸的是,它没有任何区别。请记住,这在Qt4中曾经起作用。图标在工具栏中显示良好,但在菜单中显示不好。我的图标不起作用。以下是我的qtdiag结果:Qt5.13.2(x86_64-little_endian-lp64共享(动态)发布版本;由GCC 10.0.1 20200311(Red Hat 10.0.1-0.9)在“xcb”OS:Fedora 32(工作站版)[linux版本5.6.6-300.fc32.x86_64]