首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Qt QPushButton 按下狀態視覺反饋:QSS 設置 pressed 圖片

     編輯:程式設計綜合問答

需求

QPushButton 設置圖片後,點擊時無按下視覺效果,需添加按下狀態圖片。

解決方案:QSS 樣式表

QPushButton {
    border-image: url(:/images/btn_normal.png);
}
QPushButton:pressed {
    border-image: url(:/images/btn_pressed.png);
}
QPushButton:hover {
    border-image: url(:/images/btn_hover.png); /* 可選懸停態 */
}

關鍵點

  1. 準備三張同尺寸圖片:normal、hover、pressed,加入資源文件 (.qrc)。
  2. 在構造函數或 setupUi 後調用 setStyleSheet 或在 Qt Designer 中設置。
  3. 使用 border-image 而非 image,可自動拉伸適應按鈕尺寸。

進階:狀態切換動畫

若需平滑過渡,可結合 QPropertyAnimation 動畫 iconSize 或 geometry,但通常靜態圖片切換已足夠。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved