Как я могу установить цвет фона текущей ячейки QTableView? - PullRequest
0 голосов
/ 21 апреля 2011

Недавно я пишу программу с использованием QtableView Qt (PyQt). Но я обнаружил, что текущая ячейка / индекс (сфокусированная, окруженная пунктирной линией) имеет тот же цвет фона, что и другие выделенные ячейки.

Есть ли способ выделить текущую ячейку? Я использую Qt Designer для установки таблицы стилей, но не могу найти полезный стиль.

Это мой первый вопрос, если я допустил ошибку, пожалуйста, скажите мне. Спасибо. Также прошу прощения за мой плохой английский.

С уважением,

Ответы [ 2 ]

0 голосов
/ 17 марта 2014

Для того, чтобы изменить цвет фона любой ячейки в QTableView, вам нужно вернуть цвет (например, как QVariant (QColor (red))) из вашего метода data () вашего класса модели, но только для вызовов с параметром роли.установить Qt :: BackgroundColorRole.

Есть еще одна роль Qt :: BackgroundRole, которая работает и для меня (в Qt4).

0 голосов
/ 21 апреля 2011

Есть ли конкретная причина, по которой вы используете QTableView? QTableWidget , который является простым реализованным QTableView, позволяет легко достичь желаемого эффекта.

1) Запросить QTableWidget для текущего элемента .

2) вызвать QTablewidgetitem :: setBackGround для него (возможно, также переднего плана)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...