在Qt中,对于上下文菜单项,如何隐藏图标的空间

在Qt中,对于上下文菜单项,如何隐藏图标的空间,qt,qt-contextmenu,Qt,Qt Contextmenu,我正在使用QAction为小部件添加上下文菜单。 现在,在动作文本旁边有一些空白。我假设这是QIcon与QAction的关联应该存在的空间。现在我如何隐藏这个空间。我试着做: action->setIcon(QIcon()); 但似乎仍然不起作用 请告诉我您是否有方法删除文本前的空格。我不知道是否有特定于操作或菜单的方法,但您可能可以使用样式将其删除。您没有提到正在使用的Qt版本,但4.4.3版的QAction允许您隐藏图标: 您还可以尝试使用QAction::QAction const

我正在使用QAction为小部件添加上下文菜单。 现在,在动作文本旁边有一些空白。我假设这是QIcon与QAction的关联应该存在的空间。现在我如何隐藏这个空间。我试着做:

action->setIcon(QIcon());
但似乎仍然不起作用


请告诉我您是否有方法删除文本前的空格。

我不知道是否有特定于操作或菜单的方法,但您可能可以使用样式将其删除。

您没有提到正在使用的Qt版本,但4.4.3版的QAction允许您隐藏图标: 您还可以尝试使用QAction::QAction const QString&text、QObject*父构造函数: 4.4.3 4
3.3

你不说是哪个平台。但在Mac电脑上,您可以通过以下方式完全关闭菜单项:

qt_mac_set_menubar_icons( false );

事实上,我只是查阅了资料来源,这是唯一简单的方法。尽管重新实现样式并不有趣。QWindowsStyle、QWindowsXpStyle、QMacStyle、QGtkStyle、QPlastiqueStyle等。这不会删除具有Windows样式的菜单旁边的空间。