我无法访问单独文件中的变量。
下面是我的代码的一部分:
// Style.qml
import QtQuick
QtObject {
property int mainWindowWidth: 1024
property int mainWindowHeight: 768
}
// Main.qml
import QtQuick
import QtQuick.Window
Window {
id: root
width: Style.mainWindowWidth
height: Style.mainWindowHeight
minimumWidth: width
minimumHeight: height
maximumWidth: width
maximumHeight: height
visible: true
title: "Sampletext"
}
它编译得很好,但是当我运行它时,我收到一条错误消息:
无法将[未定义]分配给线宽:Style.mainWindowWidth所在的int。
我该如何解决这个问题?
您必须创建一个样式对象或创建一个样式单例类:
样式单例类及用法:
// Style.qml
pragma Singleton
import QtQuick
QtObject {
property int mainWindowWidth: 1024
property int mainWindowHeight: 768
}
cmakelist:
set_source_files_properties(
Style.qml
PROPERTIES
QT_QML_SINGLETON_TYPE True
)
qt6_add_qml_module(appExample
URI appExample
VERSION 1.0
QML_FILES
Main.qml
Style.qml
)
// Main.qml
import QtQuick
import QtQuick.Window
import appExample
Window {
id: root
width: Style.mainWindowWidth
height: Style.mainWindowHeight
minimumWidth: width
minimumHeight: height
maximumWidth: width
maximumHeight: height
visible: true
title: "Sampletext"
}