c++ 如何访问在单独的QML文件中定义的变量?

eblbsuwk  于 11个月前  发布在  其他
关注(0)|答案(1)|浏览(89)

我无法访问单独文件中的变量。
下面是我的部分代码:

// Style.qml

import QtQuick

QtObject {
    property int mainWindowWidth: 1024
    property int mainWindowHeight: 768
}

个字符
它编译得很好,但当我运行它时,我得到一个错误说:
无法将[undefined]赋给线宽Style.mainWindowWidth所在的int。
我该如何解决此问题?

swvgeqrz

swvgeqrz1#

你必须创建一个Style对象或创建一个Style单例类:
样式单例类和用法:

// 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"
}

相关问题