我試圖創建QString(s)數組的自定義QML對象的屬性。這些將是從QML到C++代碼的文件路徑。具有QString(s)可寫數組作爲屬性的自定義QML對象
當我嘗試寫對象我得到的錯誤:
OgreResourceGroup
{
locations: [ "C:\Client\resources" ]
}
的位置屬性聲明:
Q_PROPERTY(QQmlListProperty<QString> locations READ getLocations WRITE setLocations NOTIFY locationsChanged)
portal.qml:56: Unable to assign QVariantList to [unknown property type]
拋出錯誤的QML
自定義對象中的C++寫入方法:
void setLocations(const QQmlListProperty<QString>& list);
javascript是創建一個變體數組而不是一個QStrings數組? 如果是這樣,你如何實例化一個QString?
我看過的Qt例子都沒有實現可寫列表。
任何建議,將不勝感激
QString在QML引擎中註冊。他們說這是可用的JavaScript,但我從來沒有見過實例化QString的能力 – Jay
@Jay QString被轉換爲JavaScript本地字符串。 – Arpegius