Qt6.3 QML日历报错 Composite Singleton Type Calendar is not creatable

Qt6.3 QML Calendar Error Composite Singleton Type Calendar is not creatable

我尝试像 doc 一样使用日历。

Window {
    width: 640
    height: 480
    visible: true
    title: qsTr("Hello World")

    Calendar{
        minimumDate: new Date(2017, 0, 1)
        maximumDate: new Date(2018, 0, 1)
    }
}

但我收到此错误:无法创建复合单例类型日历。 有人知道怎么用吗?

您可能混淆了 Qt5 中的 Calendar(一个小部件)和 Qt 6 中的 Calendar(一个命名空间)。

在Qt 6中工作有点不同,你必须自己创建这个控件,例如:

ColumnLayout {
    DayOfWeekRow {
        locale: grid.locale
        Layout.fillWidth: true
    }

    MonthGrid {
        id: grid
        month: Calendar.December // this is how the Calendar can be used
        year: 2022
        locale: Qt.locale("en_US")
        Layout.fillWidth: true
    }
}