Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » GUI
  • » PyQT4: разный цвет текста в строке [RSS Feed]

#1 Март 15, 2016 11:12:20

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9882
Репутация: +  853  -
Профиль   Отправить e-mail  

PyQT4: разный цвет текста в строке

Rodegast
тебе придётся сделать класс от QWidget, затем переопределить paintEvent и вручную рисовать текст
Не, там накидываются виджеты в горизонтальную коробку. И каждый из этих виждетов сам может быть составным.
А с делегатом ему нужно будет сделать QTableView и для индекса выбирать цвет, а для последнего ещё делать виджет с кнопками в делегате в виде редактора.
По идее, ему нужно полоску контролировать целиком, поэтому лучше, чтобы она в одном месте лежала и весь её внешний вид был там определён.



Отредактировано py.user.next (Март 15, 2016 11:13:35)

Офлайн

#2 Март 15, 2016 13:58:49

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2756
Репутация: +  184  -
Профиль   Отправить e-mail  

PyQT4: разный цвет текста в строке

> А с делегатом ему нужно будет сделать QTableView и для индекса выбирать цвет, а для последнего ещё делать виджет с кнопками в делегате в виде редактора.

Не вижу ничего плохого в QTableView, для “индекса выбирать цвет” не надо, нужно рисовать строку в делегате, от кнопок в ячейках лучше сразу отказаться.

> По идее, ему нужно полоску контролировать целиком, поэтому лучше, чтобы она в одном месте лежала и весь её внешний вид был там определён.

Это только звучит красиво, но обычно из такого ничего хорошего не получается.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#3 Март 16, 2016 03:05:21

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9882
Репутация: +  853  -
Профиль   Отправить e-mail  

PyQT4: разный цвет текста в строке

Rodegast
Не вижу ничего плохого в QTableView, для “индекса выбирать цвет” не надо, нужно рисовать строку в делегате, от кнопок в ячейках лучше сразу отказаться.
Ну, о чём и речь, ты уже собрался от чего-то отказываться. Как ты будешь строку в делегате рисовать, если там одну ячейку одного цвета надо сделать, другую - другого, а в третьей вообще кнопки должны быть? В делегате ты будешь с каждой ячейкой работать отдельно, а для этого нужен её индекс.

По поводу того, нужна ли таблица, а как он будет менять её внешний вид? Она же там ещё ползунки добавляет. Так он ещё и редактировать её не будет, и копировать с неё не будет, только кнопки в третьей ячейке нажимать.



Отредактировано py.user.next (Март 16, 2016 03:06:03)

Офлайн

#4 Март 16, 2016 10:50:27

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2756
Репутация: +  184  -
Профиль   Отправить e-mail  

PyQT4: разный цвет текста в строке

> Как ты будешь строку в делегате рисовать
Через paint

> если там одну ячейку одного цвета надо сделать, другую - другого
В делегате рисуется разноцветная строка в 1 ячейки. Если ячейки разные, то это делается через модель.

> В делегате ты будешь с каждой ячейкой работать отдельно, а для этого нужен её индекс.
Туда передаётся индекс.

> По поводу того, нужна ли таблица, а как он будет менять её внешний вид?….
В чём проблема?



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#5 Март 17, 2016 07:28:41

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9882
Репутация: +  853  -
Профиль   Отправить e-mail  

PyQT4: разный цвет текста в строке

Rodegast
Через paint
Что, прямо рисовать собрался? А надписи?

Rodegast
В делегате рисуется разноцветная строка в 1 ячейки.
В одной?

Rodegast
Туда передаётся индекс.
Индекс той же одной ячейки?

Смотри, нужна полоска. В полоске есть разноцветные колонки. В колонках могут меняться цвета фона, а могут меняться цвета текста. А в последней колонке есть кнопки. Допустим, он нажимает, на какую-то кнопку и вся полоска исчёзает.

Ты собрался это рисовать в списочном виде или распределять в табличном виде?



Офлайн

#6 Март 17, 2016 09:49:14

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2756
Репутация: +  184  -
Профиль   Отправить e-mail  

PyQT4: разный цвет текста в строке

> Что, прямо рисовать собрался? А надписи?
Вот как раз надпись в нутри ячейки и будет рисоваться.

> В одной?
> Индекс той же одной ячейки?
Да! Прикинь у делегаты есть метод paint который принимает индекс 1 ячейки и в этой ячейки можно рисовать всё что зохочешь.

> Ты собрался это рисовать в списочном виде или распределять в табличном виде?
Собирается не я, а Razor. Я только лишь сообщаю какие возможности доступны.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#7 Март 19, 2016 06:42:32

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9882
Репутация: +  853  -
Профиль   Отправить e-mail  

PyQT4: разный цвет текста в строке

Эксперименты показали, что даже обычная модель тут будет излишней. Не похоже это на работу с данными. Больше похоже на метки с выведенной информацией.



Офлайн

#8 Март 19, 2016 14:00:16

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2756
Репутация: +  184  -
Профиль   Отправить e-mail  

PyQT4: разный цвет текста в строке

> Эксперименты показали, что даже обычная модель тут будет излишней.

Я не знаю какие ты эксперименты проводил, но решать что излишне, а что нет должен Razor. Только он знает что ему надо.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

  • Начало
  • » GUI
  • » PyQT4: разный цвет текста в строке[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version