我想通過風格單身我的應用程序樣式Style.qml
,我註冊使用qmlRegisterSingletonType
。當我更改單身人士qml文件時,這些在重建應用程序時不會得到更新。風格從單身人士在構建期間未更新
以下行爲使我相信這是一個緩存問題:當我將新值添加到樣式文件的頂部時,所有舊值都會相應地移位。例如,查看下面給出的文件,如果我將另一行添加到字體大小,則此移位會導致在應用程序內部顯示值爲backgroundColorHighlight
的任何項目的顏色爲backgroundColor
。所以顏色被替換爲原來使用的行的值。
我在哪裏可以找到緩存文件(如果這是問題),這是造成這種奇怪的行爲,並手動清除它?
步驟我已經採取了迄今:
- 通過Qt Creator的
- Clened項目清理的項目,通過刪除生成文件夾
- 檢查和
.qmlc
文件 - 新增
QML_DISABLE_DISK_CACHE
手動。 pro file - ran
qmake
重建前
現在我全都沒有想法。 Qt Creator/qmake可以「隱藏」緩存文件嗎?
Style.qml:
pragma Singleton
import QtQuick 2.8
QtObject {
//basic fonts
property int fontSizeSmall: 8
property real fontSizeMedium: 10
property real fontSizeLarge: 14
property string primaryFontColor: "#eeeeee"
//backgrounds
property string backgroundColorTransparent: "#4a4a4a88"
property string backgroundColor: "#4a4a4a"
property string backgroundHighlight: "#9a9a9a"
property string backgroundColorLight: "#7a7a7a"
property string dragTileBackgroundColor: "#5a5a5a"
property string titleBarColor: "#3a3a3a"
property color borderDarkColor: "#3a3a3a"
property string mapMarkerFavorite: "#00ff00";
property string mapMarker: "#ff3333";
property string mapMarkerHighlight: "#ff8888";
property string miniMapFillColor: "#ffffff"
property string miniMapBorderColor: "#ffffff"
property real miniMapBorderWidth: 1
property real particleMiniMapOpacity: 0.5
property int listElementHeight: 30
}
謝謝你的回答和記錄錯誤!對我來說似乎有點傻,該項目相關的數據應該存儲在用戶文件夾中。 –
這就是Windows的方式。它依賴於平臺。標準系統路徑等。 – dtech