Название: Tab в QTableWidget Отправлено: alex-v от Февраль 22, 2011, 17:40 Есть таблица QTableWidget с количеством столбцов и строк [N x M].
Когда на клаве нажимаем Tab, то фокус бегает слева направо по ячейкам строки и затем сверху вниз по следующим строкам. Как сделать, чтобы при нажатии на Tab фокус перемещался строго по одной колонке сверху вниз? Название: Re: Tab в QTableWidget Отправлено: Пантер от Февраль 22, 2011, 17:44 Читай в ассистенте про installEventFilter
Название: Re: Tab в QTableWidget Отправлено: alex-v от Февраль 22, 2011, 17:52 Почитал. Разобрался.
Тока, получается, мне фильтровать ничего не нужно. Мне надо перенаправить фокус сверху вниз (по одному столбцу), а не как сейчас - слева направо по горизонтали. Название: Re: Tab в QTableWidget Отправлено: alex-v от Февраль 22, 2011, 18:02 т.е. как запретить фокус для одних ячеек таблицы, и разрешить их для других?
Название: Re: Tab в QTableWidget Отправлено: Kolobok от Февраль 22, 2011, 18:19 Как сделать, чтобы при нажатии на Tab фокус перемещался строго по одной колонке сверху вниз? Можно наследоваться от QTableWidget и переопределить moveCursor(...). т.е. как запретить фокус для одних ячеек таблицы, и разрешить их для других? QTableWidgetItem::setFlags ( Qt::ItemFlags flags ) Название: Re: Tab в QTableWidget Отправлено: alex-v от Февраль 22, 2011, 18:27 Можно наследоваться от QTableWidget и переопределить moveCursor(...). Думал об этом. При этом таблицу придётся создавать программно. А нужно бы иметь возможность её редактировать в дизайнере. QTableWidgetItem::setFlags ( Qt::ItemFlags flags ) Смотрел. Нету там флага для запрета фокуса. Название: Re: Tab в QTableWidget Отправлено: alex-v от Февраль 22, 2011, 19:02 хм... видимо больше нету выхода, кроме как создать таблицу программно....
Название: Re: Tab в QTableWidget Отправлено: Kolobok от Февраль 22, 2011, 19:38 Можно наследоваться от QTableWidget и переопределить moveCursor(...). Думал об этом. При этом таблицу придётся создавать программно. А нужно бы иметь возможность её редактировать в дизайнере. Связи не вижу. Смотрел. Нету там флага для запрета фокуса. Qt::ItemIsSelectable разве не оно? Название: Re: Tab в QTableWidget Отправлено: alex-v от Февраль 22, 2011, 19:58 Цитировать Связи не вижу. эх :) ... оказывается в дизайнере есть функция "Преобразовать в...". Это в корне меняет дело.Цитировать Qt::ItemIsSelectable разве не оно? Не. Пробовал. На фокус это не влияет. Тока на то - будет ли ячейка выделена синим фоном или нет в фокусе.Вообщем проблема решена путём: Цитировать Можно наследоваться от QTableWidget и переопределить moveCursor(...). Всем спасибо. |