c++ - 将大字符串的逗号分隔子字符串转换为 QML 中的变体数组元素

标签 c++ qt qml

好吧,我是 Qt5 QML 框架的新手。这在任何其他语言(如 Java 等)中都相当容易。但我无法在 QML 中完成此操作。

这就是我想要做的:我想从我的 C++ 代码中获取一个长字符串,用逗号分隔

 property string: "Here,There,That,This" 

我想把它分成单独的字符串。我开始明白你需要使用一个变体,因为我基本上拥有这个属性

property variant stringlist 

其中,stringlist[0] = "Here"和 stringlist[1] = "There"等

有没有人对我可以调用的函数的代码有建议。我想避免需要添加 javascript 来创建此功能。因此,如果可能的话,请尝试建议一个以 QML 为中心的函数。

最佳答案

Item{
  property string myString: "Here,There,That,This"
  property variant stringList: myString.split(',')

  Component.onCompleted: {
    console.log(stringList[0]); //outputs 'Here'
  }
}

关于c++ - 将大字符串的逗号分隔子字符串转换为 QML 中的变体数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24305281/

相关文章:

字符串的 C++ vector 、指向函数的指针以及由此产生的挫败感

c++ - C++ 编译器如何处理在条件语句中声明的类型?

c++ - 将 std::unique_ptr.get() 作为参数传递给 addWidget()

qt - qml文件在qrc和本地路径之间切换

c++ - QML 如何动态访问 ListView 项

vb.net 中的 C++ DLL Wrapper 传递字节数组的字节数组?

c++ - 从大型文本文件读取到 Qt 中的结构数组?

c++ - 在没有类声明的情况下使用 Qt 的 Q_DECLARE_FLAGS 和 Q_DECLARE_OPERATORS_FOR_FLAGS

c++ - 如何将QML模型更改为C++模型?

复数运算的 C++ 运算符重载