gpt4 book ai didi

c++ - 如何从 C++ 中选择 TableView (qml) 中的行?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:43:17 24 4
gpt4 key购买 nike

我尝试使用 C++ 函数在我的 TableView 中选择单行。在文档中我找到了 property "selection"但是当我尝试在我的代码中使用它时,出现错误。

第一个问题。如何在我的 QML 代码中使用此属性?由于错误,这种方式不起作用:无效的属性分配:“selection”是只读属性

    TableView{
....
selection.select(0)
}

我的第二个问题。如何通过 C++ 更改此属性?我知道我必须使用 setProperty() 方法,但第二个参数将是 function: select(0)?

最佳答案

来自 the documentation :

tableview.selection.select(0)       // select row index 0

tableview.selection.select(1, 3) // select row indexes 1, 2 and 3

tableview.selection.deselect(0, 1) // deselects row index 0 and 1

tableview.selection.deselect(2) // deselects row index 2

你不能从TableView的定义中做到这一点。稍后您必须从 JavaScript 执行此操作。为您的 TableView 分配一个 ID,并使用该 ID,使用 JavaScript 选择适当的行。

编辑:

要从 C++ 执行此操作,您首先需要获取该对象的句柄。最好的方法是分配 objectName该元素的属性,然后使用 QObject::findChild() 查找它.一旦您获得了指向您的 TableView 的指针,您就可以调用它的方法,如所述here .实际上,您首先需要获取它的 selection属性,然后调用其(selection 的)select()方法。

关于c++ - 如何从 C++ 中选择 TableView (qml) 中的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25414067/

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