天天看點

QPushButton 實作保持按下效果(轉載​​)

版權聲明:本文為Pafey部落客原創文章,遵循 CC 4.0 BY-SA 版權協定,轉載請附上原文出處連結和本聲明。            

本文連結:https://blog.csdn.net/qiangzi4646/article/details/80135120

        我們知道微信電腦版左上側的3個按鈕,是可以保持按下狀态,且隻要有個按下,之前按下的按鈕就要切換至彈起狀态。 

如圖 :

QPushButton 實作保持按下效果(轉載​​)

那麼 QPushButton 怎麼實作這種效果呢?其實很簡單

在 qt 設計師直接編輯按鈕屬性即可,在 QPushButton 的 QAbstractButton 屬性裡勾選 checked 和 autoExclusive 屬性。如下圖 

QPushButton 實作保持按下效果(轉載​​)

注,一組按鈕都要設定,如果想要設定哪個按鈕預設按下,可以勾選 checked 屬性。不選的話預設選擇第一個。 

當然不想在設計師裡勾選的話,也可以直接用代碼設定:

button->setCheckable(true);

button->setChecked(true);//隻能設定一個

button->setAutoExclusive(true);123

設定按鈕樣式 

QPushButton

{   

    border-image: url(:/navbar/bar_org_nor);

    background:transparent; 

}

QPushButton:hover

{

    border-image: url(:/navbar/bar_org_down);

}

QPushButton:checked

{

    border-image: url(:/navbar/bar_org_down);

}

123456789101112131415

效果圖

QPushButton 實作保持按下效果(轉載​​)

版權聲明:本文為CSDN部落客「Pafey」的原創文章,遵循 CC 4.0 BY-SA 版權協定,轉載請附上原文出處連結及本聲明。

原文連結:https://blog.csdn.net/qiangzi4646/article/details/80135120

繼續閱讀