Qt 5.4 OS X 如何在 QMenu 和 QToolBar 中使用 QAction,但仅在 QToolbar 中显示图标
Qt 5.4 OS X how to use a QAction in both a QMenu and a QToolBar, but show the icon only in the QToolbar
在 OS X (Yosemite) 上使用 Qt 5.4,我有一个带有图标的 QAction
。我希望图标显示在我添加操作的 QToolbar
中。这很好用。但是,我不希望图标显示在我添加操作的 QMenu 中。
我该怎么做?
您可以在您的应用程序中使用 Qt::AA_DontShowIconsInMenus
属性,或单独使用 QAction::setIconVisibleInMenu(bool visible)。直接来自 Qt's docs:
QApplication app(argc, argv);
app.setAttribute(Qt::AA_DontShowIconsInMenus); // Icons are *no longer shown* in menus
// ...
QAction *myAction = new QAction();
// ...
myAction->setIcon(SomeIcon);
myAction->setIconVisibleInMenu(true); // Icon *will* be shown in menus for *this* action.
在 OS X (Yosemite) 上使用 Qt 5.4,我有一个带有图标的 QAction
。我希望图标显示在我添加操作的 QToolbar
中。这很好用。但是,我不希望图标显示在我添加操作的 QMenu 中。
我该怎么做?
您可以在您的应用程序中使用 Qt::AA_DontShowIconsInMenus
属性,或单独使用 QAction::setIconVisibleInMenu(bool visible)。直接来自 Qt's docs:
QApplication app(argc, argv);
app.setAttribute(Qt::AA_DontShowIconsInMenus); // Icons are *no longer shown* in menus
// ...
QAction *myAction = new QAction();
// ...
myAction->setIcon(SomeIcon);
myAction->setIconVisibleInMenu(true); // Icon *will* be shown in menus for *this* action.