Как я могу установить фокус клавиатуры для элемента QTreeView?

Я использую python3.5 и PyQt 5.6 с Qt 5.6.1

В моем приложении https://github.com/barry-scott/scm-workbench меня есть QTreeView, в котором нужно выбрать элемент. Я могу использовать мышь для выбора элемента и клавиши курсора клавиатуры для перемещения относительно выбранного вещь.

Но если я использую следующее, чтобы выбрать определенный элемент при запуске приложения, как это:

tree_view = QtWidget.QTreeView()
selection_model = tree_view.selectionModel()
selection_model.select( index,
            selection_model.Clear |
            selection_model.Select |
            selection_model.Current )

tree_view.scrollTo( index )

Элемент, представленный индексом, подсвечивается в QTreeView, как и ожидалось.

Но когда я нажимаю клавишу курсора вниз, выбирается первый элемент, а не элемент после уже выбранного.

Как получить навигацию клавиатуры относительно выбранного элемента?

1 ответ

Решение

setCurrentIndex(modelIndex) Функция QTreeView должна делать то, что вы хотите.

http://doc.qt.io/qt-5/qabstractitemview.html

Другие вопросы по тегам