Qt之控制項顏色面板類QPalette(轉自CSDN,xgbing)

來源:互聯網
上載者:User

標籤:

 QPalette類提供了繪製QWidget控制項時使用的顏色。

    控制項的顏色狀態分三種:

(1)Active,啟用狀態

(2)Disabled,禁用狀態

(3)Inactive,未啟用狀態

 

    控制項在這三種不同的狀態下具有不同的顏色值,QPalette類管理這三組顏色,它根據這三種狀態分為三組顏色,每一組顏色都根據繪圖角色的不同分類。系統在繪製控制項時使用這些顏色,程式員可以改變這些設定。

    設定的方法是先調用QWidget::palette()擷取當前面板,修改它為自訂的值後再通過方法QWidget::setPalette設定為新修改的面板。代碼如下所示:

[cpp] view plaincopy 
  1. QPalette palette = widget->palette();  
  2. palette.setColor(QPalette::Window, Qt::lightGray);  //改變控制項背景色  
  3. palette.setColor(QPalette::WindowText, Qt::blue);   //改變控制項字型顏色  
  4. ...  
  5. widget->setPalette(palette);  


通過這種方法,可以方便設定控制項的背景色,字型顏色等。

 

常用的設定方法如下:

(1) void QPalette::setBrush ( ColorRole role, const QBrush & brush )

改變所有組下指定角色role的畫刷顏色值。

(2) void QPalette::setBrush ( ColorGroup group, ColorRole role, const QBrush & brush )

改變指定組group下的指定角色role的畫刷顏色值。

(3) void QPalette::setColor ( ColorRole role, const QColor & color )

改變所有組下指定角色role的顏色值。

(4) void QPalette::setColor ( ColorGroup group, ColorRole role, const QColor & color )

改變指定組group下指定角色role的顏色值。

 後續詳細:http://blog.csdn.net/xgbing/article/details/7784984

 

Qt之控制項顏色面板類QPalette(轉自CSDN,xgbing)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.