How to get data from TableView - QML Desktop Components
Anyone has an idea how to get data from currently selected item from TableView?
In ListView there is currentItem, but in TableView there is only currentIndex. Index should be enough, just get data at index. But how do do that? It should be extremely simple.
I'd like to get item and show additional info (description) in separate text area.
Any ideas?
Re: How to get data from TableView - QML Desktop Components
Hmmm... by getting the index number from currentIndex.row ?
Re: How to get data from TableView - QML Desktop Components
currentIndex itself is row index so I have row index but still no idea how to get object at this index. I can get it from python backend, but I don't want to - unnecessary redundant code.
If I have ListView there is currentItem and I'm able to operate directly on this item.
Re: How to get data from TableView - QML Desktop Components
Doesn't this work?
Code:
model.get(currentIndex).someRole
Re: How to get data from TableView - QML Desktop Components
TypeError: Result of expression 'model.get' [undefined] is not a function.
The same with model[currentIndex]
TypeError: Result of expression 'model[currentIndex]' [undefined] is not an object.
Re: How to get data from TableView - QML Desktop Components
Is model a "ListModel" or some other kind of model?
Re: How to get data from TableView - QML Desktop Components
In python implementation of AbstractListModel.
Of course all data from model appears correctly.
Re: How to get data from TableView - QML Desktop Components
If it's a QAbstractItemModel then you need to provide your own method for accessing data from the model.
I suggest an equivalent of the following:
Code:
QVariantMap Model::get(int idx) const {
QVariantMap map;
foreach(int k, roleNames().keys()) {
map[roleNames().value(k)] = data(index(idx, 0), k);
}
return map;
}
Re: How to get data from TableView - QML Desktop Components