QT新增樣式表QSS/CSS檔案後不起作用

浅晓寒發表於2024-06-01

.qss和.css檔案類似,CSS即層疊樣式表(Cascading Style Sheets)可以修改元件的樣式。
在QT專案需要.css檔案對元件進行樣式設定,在qrc資料夾下新增檔案之後,讀取會失敗,原因是新增檔案需要點選新增現有檔案,儘管所需檔案在某個目錄下,也不要選擇新增目錄。
image

分別使用絕對路徑、相對路徑新增css檔案

專案資料夾結構:
image


//filename是檔案的路徑

void MainFrame::loadStyleSheet(const QString &filename)
{
    QFile file(filename);
    if(file.open(QFile::ReadOnly))
    {
        QString styleSheet(file.readAll());
        this->setStyleSheet(styleSheet);    //設定qss
        file.close();
    }
}

//舉個例子:
   MF.loadStyleSheet("F:/QT/QT Project/rename/style/myqss.css");	//絕對路徑
   MF.loadStyleSheet(":/style/myqss.css");	//相對路徑

相關文章