Qt QMenu QSystemTrayIcon Соотношение размеров значков в MacOS

У меня есть значки, отображаемые в системном меню. Иконки не квадратные и имеют соотношение сторон 4/3.

В Windows 10 все отображается нормально, а в MacOS - в виде квадрата.

Иконка в трее:

QSystemTrayIcon trayIcon;
QMenu menu;
QAction *action = new QAction(QIcon("icon.svg"), "Text", this);
menu.addAction(action);
m_trayIcon.setContextMenu(m_menu);

Я могу изменить размер иконки, переопределив стиль, указанный на нескольких форумах.

class myStyle: public QProxyStyle
{
    Q_OBJECT
  public:

    int pixelMetric(PixelMetric metric, const QStyleOption * option = 0, const QWidget * widget = 0 ) const {
        int s = QProxyStyle::pixelMetric(metric, option, widget);
        if (metric == QStyle::PM_SmallIconSize) {
            s = 30;
        }
        return s;
    }
};

Хотя это не позволяет изменить соотношение.

До сих пор мне не удалось этого добиться.

0 ответов

Другие вопросы по тегам