gpt4 book ai didi

c++ - 迭代 QML XYSeries 中的点

转载 作者:行者123 更新时间:2023-11-30 03:45:39 26 4
gpt4 key购买 nike

我正在尝试遍历 Qt 5.5 QtCharts 中的点 LineSeries 类型,继承自 XYSeries .

我尝试了一个简单的 for -loop,但我想不出一种方法来确定系列中的点数:

for (var i=0; i < my_line_series.contentItem.children.length; ++i) {
// do something with the index
}

不幸的是,以下似乎都不是LineSeries的成员:

  • contentItem
  • children
  • length
  • count
  • size

或者,我可以尝试遍历系列,直到在给定索引处没有访问点——但是用于访问给定索引处的点的方法,at() , 返回 (0,0)如果索引无效,则完全有可能存在真实的 (0,0)点在我的LineSeries .

....那么是否可以在纯 QML 中(请参阅编辑)进行此迭代?

编辑:底层 C++ 类型 QLineSeries 提供 count()方法,因此可以传递 LineSeries QML 类型为 Q_INVOKABLE采取QAbstractSeries*的方法并以这种方式获得尺寸。不过,对于一个简单的问题来说,这似乎是一种荒谬的解决方法。

最佳答案

Qt 5.7 是可能的。

有一个“计数”属性(不是函数),允许您使用 QML/JS 中的“at”函数迭代 LineSeries 的点。

遗憾的是它没有记录在案,我做了一个疯狂的猜测并且很幸运,但我想当您尝试使用 Qt 5.5 时该属性不存在。

示例:

for(var i = 0; i < lineSeries.count; ++i)
console.log(lineSeries.at(i));

关于c++ - 迭代 QML XYSeries 中的点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34618846/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com