spb*_*ots 1 user-interface qt qt4
是否可以在QAction禁用时显示自定义图标?例如,启用工具时显示图标A,禁用工具时显示图标B.
在创建时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..." );
Run Code Online (Sandbox Code Playgroud)
如果这确实有用,我会有兴趣学习.我从来没有去测试它,但它似乎正是这个设计的用途.