我刚刚开始学习QML,并试图通过ListView实现一个简单的表(以this SO article为指导)。
我想使其中一列可编辑,因此该列使用TextField
代替Label
。我感到困惑的地方是找到如何将更新的值写回到模型中。我在模型上找到了setProperty
方法,但目前还不清楚如何访问代表的“当前项目”的索引以作为方法调用的第一个参数。
尝试并失败使用currentIndex
后,最终我发现实际上可以使用index
,但我不知道该怎么知道以及在哪里记录。我之所以问这个问题,是因为我怀疑我缺少一些基本概念,应该使这一点变得显而易见。
答案 0 :(得分:1)
ListView::delegate的文档中已提及:
代表提供了一个模板,用于定义由实例化的每个项目 风景。 该索引显示为可访问的
index
属性。 模型的属性也可用,具体取决于类型 数据模型。
this页面上也提到了它,尽管很难找到它。