Как мне получить целую строку из многоколоночного PyQT Qtreeview?

Я относительно новичок в PyQT, я долго и упорно занимался исследованиями, и я просто не могу найти ответа на этот вопрос. В основном у меня есть QTreeView, который заполняется данными из QStandardItemModel. Эти данные имеют 2 столбца и различные заголовки, которые будут расширяться. Когда я дважды щелкаю элемент в Treeview, мне нужно иметь возможность получить всю строку, которая хранится в QStandardItemModel, но я могу получить только одну выбранную ячейку. У меня сейчас настроено следующее, но он просто возвращает единственную ячейку, по которой дважды щелкнули

index = self.treeview.currentIndex() print index.data().toString()

Я могу попытаться выполнить поиск модели на основе выбранной ячейки b / c, возможно, второй столбец из перечисленных элементов может иметь идентичные поля, но первый столбец всегда будет уникальным. Я также не могу просто использовать индекс строки, как я понимаю, потому что выбираемые элементы являются дочерними элементами, поэтому я получаю индекс 0 для каждого первого дочернего элемента в родительском элементе.

Любая помощь приветствуется. Заранее спасибо.


person HawksFan21    schedule 26.04.2014    source источник
comment
Я решил это, просто используя QTreeWidget, а не QTreeView. QTreeWidget позволил мне использовать следующий код для получения первого столбца данных независимо от того, какая ячейка была дважды нажата: index = self.treewidget.currentItem() print index.data(0, 0).toString()   -  person HawksFan21    schedule 27.04.2014
comment
Я попытался ответить на вопрос, но, видимо, мне нужно подождать 24 часа   -  person HawksFan21    schedule 27.04.2014


Ответы (1)


Я решил это, просто используя QTreeWidget, а не QTreeView. QTreeWidget позволил мне использовать следующий код для получения первого столбца данных независимо от того, какая ячейка была дважды нажата:

index = self.treewidget.currentItem() print index.data(0, 0).toString()

person HawksFan21    schedule 29.04.2014