我沒有在網上找到答案,我希望這個問題還沒有作出..如果我將刪除我的帖子.. 現在的問題。 例如:我在QPushButton
上用QtCreator
(或用QIcon等編程設置了一個圖像。) 然後我編寫了一個樣式表,我爲同一個按鈕設置了另一個圖像。 css和qtCreator文件(.ui)之間有一些優先級嗎? 哪個設置克服了其他?樣式表和文件.ui之間的優先級?
然後我知道兩種方法來加載在Qt應用程序的CSS,所以我認爲我使用的方法將決定優先順序。 對不對?
我沒有在網上找到答案,我希望這個問題還沒有作出..如果我將刪除我的帖子.. 現在的問題。 例如:我在QPushButton
上用QtCreator
(或用QIcon等編程設置了一個圖像。) 然後我編寫了一個樣式表,我爲同一個按鈕設置了另一個圖像。 css和qtCreator文件(.ui)之間有一些優先級嗎? 哪個設置克服了其他?樣式表和文件.ui之間的優先級?
然後我知道兩種方法來加載在Qt應用程序的CSS,所以我認爲我使用的方法將決定優先順序。 對不對?
如果你在程序中使用setstylesheets,它會被使用,猜測你在構造函數中設置了css。如果您沒有以編程方式設置樣式表,則缺省情況下使用.ui中的css,如果以形式(.ui)和編程方式設置css,則將使用通過程序設置的css。 The priority is for css set programmatically as it is executed later
!!
如果您在QtCreator中設置了一個樣式表,它將在它執行setupUi()
函數時應用於窗口小部件/控件的構造函數中。
MyWidget::MyWidget(QWidget *parent)
{
setupUi(this); // here the stylesheet is applied
}
如果此調用後添加代碼,您可以更改用戶界面的任何財產,或致電setStyleSheet()
功能改變整個樣式表。
您也可以通過在main.cpp文件中調用qApp->setStyLeSheet(...)
來更改整個應用程序的樣式表。