我有一個兩狀態QPushButton。我想將圖標關聯到每個狀態。Qt - 獲取QPushButton圖標名稱
這就像音樂播放器中的播放|暫停按鈕。
要做到這一點,我想,以知道下一個圖標來設置將是獲取當前圖標名稱。
我可以繼承QPushButton,但它值得嗎?
我有一個兩狀態QPushButton。我想將圖標關聯到每個狀態。Qt - 獲取QPushButton圖標名稱
這就像音樂播放器中的播放|暫停按鈕。
要做到這一點,我想,以知道下一個圖標來設置將是獲取當前圖標名稱。
我可以繼承QPushButton,但它值得嗎?
使用QPushButton ::圖標()和QIcon ::名稱()獲取圖標的名稱。
而不是設置基礎上,QPushButton
的狀態的圖標,設置一個QIcon
有兩種狀態,如果你有一個可檢查的QPushButton
使用它,QT會選擇正確的圖標。
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);
完美,謝謝! – Maxbester 2013-02-25 09:09:17
爲什麼不按照推狀態設置圖標?使用'QPushButton :: ischecked()' – nurettin 2013-02-25 08:25:16
我試過:'myButton-> setStyleSheet(「:checked {image:url(:/ img/pause.png);}」);'但它不起作用。 – Maxbester 2013-02-25 08:28:17