При создании QAction
вы передаете его QIcon
. Хотя я сам не пробовал, но заметил, что QIcon
имеет функцию void QIcon::addPixmap ( const QPixmap & pixmap, Mode mode = Normal, State state = Off )
. Mode
может быть одним из Normal
, Disabled
, Active
или Selected
. Таким образом, я предполагаю, что что-то вроде этого будет работать:
QPixmap enabled_icon( "enabled.png" );
QPixmap disabled_icon( "disabled.png" );
QIcon icon( enabled_icon );
icon.addPixmap( disabled_icon, QIcon::Disabled );
QAction action( icon, "&Menu action..." );
Мне было бы интересно узнать, действительно ли это работает. Я никогда не удосужился его протестировать, но, похоже, именно для этого и было разработано.