1

我有两个状态的 QPushButton。我想将一个图标与每个状态相关联。

就像音乐播放器中的播放|暂停按钮。

为此,我想获取当前图标名称,以便了解下一个要设置的图标是什么。

我可以继承 QPushButton 但值得吗?

4

2 回答 2

7

不是根据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 );
于 2013-02-25T08:38:25.200 回答
0

使用 QPushButton::icon() 和 QIcon::name() 获取图标名称。

于 2013-02-25T08:29:02.833 回答