日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Qt使用qss文件管理stylesheet

發(fā)布時間:2023/11/30 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Qt使用qss文件管理stylesheet 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

內(nèi)容總結(jié)簡介:
1)使用.qss后綴的文件來管理Qt中每個類的具體組件的stylesheet設置。
2)在類中使用具體.qss文件中的設置。
3)解決控件中多個相同組件不同設置或者同一個控制不同子控制或者偽狀態(tài)的問題。

1.新建后綴名為.qss的文件管理stylesheet設置
1)右鍵單擊工程名字,add new ->Qt->Qt resource file,將文件名字取為res.qrc。
2)右鍵單擊res.qrc,選擇add prex,設置名字為qss。
3)右鍵單擊qss,選擇add new->General->Empty file,取名為對應類名字,如mainwIndow.qss,則可以在這個文件中寫mainwindow中使用的組件stylesheet設置。
4)期間所有的提示都選擇“YesToAll"。

2.在具體的類中使用文件中的stylesheet設置
1)使用mainwindow.qss初始化QFile文件:QFile file(:/qss/mainwindow.qss)
2)以只讀的方式打開文件:file.open(QFile:readOnly)
3)將文件的內(nèi)容組合成字符串:QString styleSheetString = tr(file.readAll())
4)應用stylesheet:setStyleSheet(styleSheetString)
5)關閉文件:file.close();

3.解決單個控件中的多個設置問題或者一個控件加上多個子控制或者偽狀態(tài)的設置
(1)解決單個控件中的多個設置問題
1)選擇ID作為區(qū)分的標注,即在組件設置后面加上#要設置對象的名字
2)不妨假設在mainwindow中有多個QPushButton,將其中的一個名為num1的設置為紅色,其他全部設置為綠色,則有:mainwindow QPushButton#num1{ color:red;} QPushButton{ color:green;}
3)單獨設置的那個控件需要在mainwindow.qss文件中加上所在類的名字作為標識,并在使用指定num1組件時,額外添加代碼num1->setObjectName(“num1”)
(2)解決一個控件多個子控制或者偽狀態(tài)的設置問題
1)不妨假設設置num1的QPushButton在checked狀態(tài)下為紅色,在unchecked狀態(tài)下設置成綠色:
QPush:indicator:checked{color:red;} QPushButton:indicator:unchecked{color:green}
總結(jié):在stylesheet設置文件中,相同組件的設置會被同時選中,但是如果多個組件設置中存在相同的屬性設置,則最符合要求的那個屬性會把其他相同的屬性覆蓋掉,但是其他屬性會保留下來。

總結(jié)

以上是生活随笔為你收集整理的Qt使用qss文件管理stylesheet的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。