我有两个状态的 QPushButton。我想将一个图标与每个状态相关联。
就像音乐播放器中的播放|暂停按钮。
为此,我想获取当前图标名称,以便了解下一个要设置的图标是什么。
我可以继承 QPushButton 但值得吗?
我有两个状态的 QPushButton。我想将一个图标与每个状态相关联。
就像音乐播放器中的播放|暂停按钮。
为此,我想获取当前图标名称,以便了解下一个要设置的图标是什么。
我可以继承 QPushButton 但值得吗?
不是根据QPushButton
的状态设置图标,而是设置一个QIcon
具有两种状态的图标,如果您将其与 checkable 一起使用,Qt 将选择正确的图标QPushButton
。
QIcon icon = QIcon();
// 'Off' state corresponds to unchecked state of QPushButton
icon.addPixmap( QPixmap( ":/img/play.png" ), QIcon::Normal, QIcon::Off );
// 'On' state corresponds to checked state of QPushButton
icon.addPixmap( QPixmap( ":/img/pause.png" ), QIcon::Normal, QIcon::On );
QPushButton * button = new QPushButton();
button->setIcon( icon );
button->setCheckable( true );
使用 QPushButton::icon() 和 QIcon::name() 获取图标名称。