我正在使用 QML + Python 创建多平台应用程序。面临处理系统深色模式的挑战(不确定它是否适用于 Windows,但我目前使用的是 Mac)。
现在我使用属性手动设置暗/亮模式。有什么方法可以检测用户的模式并将该值设置为我的属性吗?或者还有其他可能的解决方案吗?
import QtCore
import QtQuick
import QtQuick.Controls
import QtQuick.Dialogs
ApplicationWindow {
width: 640
height: 480
visible: true
property bool darkMode: false
Text {
id: textField
color: {
switch (darkMode) {
case true:
"white";
break;
case false:
"black";
break;
}
}
}
}
从 Qt 6.5 开始,您可以简单地执行以下操作:
property bool darkMode: Qt.application.styleHints.colorScheme === Qt.ColorScheme.Dark