Russian Qt Forum

Qt => Model-View (MV) => Тема начата: zhbr от Июль 05, 2018, 18:07



Название: QTableView: переключение элементов Tab'ом
Отправлено: zhbr от Июль 05, 2018, 18:07
Добрый вечер.

Не могу понять баг или нет. Есть три tableView и три модели 3х3. Первая заполнена полностью. Во второй нет элемента 0,0. В третьей нет элемента 2,2. У отсутствующих элементов убраны все флаги, чтобы нельзя было выбрать этот элемент.

Если тыкнуть в произвольный элемент первой таблицы и затем табом переключаться между элементами, то при достижении последнего вью переключится на первый элемент. Аналогично с шифттабом в обратную сторону.

Во второй таблице при попытке табом переключиться с последнего существующего элемента, вью теряет фокус. В обратную же сторону шифттабом все ок.

В третьей таблице все с точностью наоборот.

Хочется чтобы в прямом направлении таблица вела себя как третья, а в обратном как вторая. Пытался отнаследоваться от QTableView и переопределить методы связанные с фокусом, нажатием на кнопку tab - не смог достигнуть требуемого результата. Баг ли это? Как победить?

Тестовый проект прилагаю.


Название: Re: QTableView: переключение элементов Tab'ом
Отправлено: vic57 от Июль 05, 2018, 23:06
тут я бы сделал eventFilter на уровне MainWindow
http://www.linuxcenter.ru/lib/books/qt3/qt3_11.phtml?style=print
пример старый но суть та же