Я добавляю действия к QToolBar
только с помощью значков и пустого текста, и я хочу изменить каждый стиль действия при его запуске (в частности, изменить его цвет границы):Qt5/C++: изменить стиль QIcon внутри QToolBar
toolbar = new QToolBar;
action1 = toolbar->addAction(my_icon1, "");
action2 = toolbar->addAction(my_icon2, "");
QObject::connect(action1, &QAction::triggered, [this]{
// change border color of action1
// unset border color of action2
});
QObject::connect(action2, &QAction::triggered, [this]{
// change border color of action2
// unset border color of action1
});
Но поскольку QIcon
не виджет (не QAction
конечно), я не знаю, где установить стиль конкретного действия, и QAction::associatedWidget()
возвращает QToolBar
виджет и не связанный которая владеет значком.
Я использую только код на C++, без QML
или ui
файлов.