[4.x.x] Вид курсора в QTreeView |
Здравствуйте, гость ( Вход | Регистрация )
[4.x.x] Вид курсора в QTreeView |
panter_dsd |
14.4.2009, 16:39
Сообщение
#1
|
Жаждущий знаний Группа: Участник Сообщений: 254 Регистрация: 1.1.2009 Из: Санкт-Петербург Пользователь №: 474 Спасибо сказали: 32 раз(а) Репутация: 3 |
Как задать свой цвет для курсора? Отнаследовался от QTreeVew и переопределяю:
Но линия рисуется только слева и сверху от итема. После дня Сообщение отредактировал panter_dsd - 14.4.2009, 16:42 |
|
|
igor_bogomolov |
14.4.2009, 16:59
Сообщение
#2
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
Под курсором подразумевается пунктирная рамка вокруг итема? Если да, то помню что я случайно менял (в том смысле, что специально я этого не добивался) через QStyleOptionViewItem->palette. Какой именно атрибут - непомню, но если все переберете, найдете.
А то что painter->drawRect(option.rect) не полнстью рисуется, так попробуйте для option.rect сместить его нижнию-правую точку на один пиксел. Должно помоч. |
|
|
panter_dsd |
14.4.2009, 17:51
Сообщение
#3
|
Жаждущий знаний Группа: Участник Сообщений: 254 Регистрация: 1.1.2009 Из: Санкт-Петербург Пользователь №: 474 Спасибо сказали: 32 раз(а) Репутация: 3 |
1. А можешь точнее вспомнить?
2. Сместил, не получается. |
|
|
igor_bogomolov |
14.4.2009, 18:08
Сообщение
#4
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
На память не могу. Сейчас у себя попробую, чуть позже отпишусь
|
|
|
panter_dsd |
14.4.2009, 19:19
Сообщение
#5
|
Жаждущий знаний Группа: Участник Сообщений: 254 Регистрация: 1.1.2009 Из: Санкт-Петербург Пользователь №: 474 Спасибо сказали: 32 раз(а) Репутация: 3 |
Проблема решена.
Сообщение отредактировал panter_dsd - 14.4.2009, 19:21 |
|
|
igor_bogomolov |
14.4.2009, 21:11
Сообщение
#6
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
Это самое простое решение - отрисовать рамку через drawRect.
Я ради интереса (подсмотрев в исходниках), изваял следущее
Тоже помоему неплохо |
|
|
panter_dsd |
15.4.2009, 6:20
Сообщение
#7
|
Жаждущий знаний Группа: Участник Сообщений: 254 Регистрация: 1.1.2009 Из: Санкт-Петербург Пользователь №: 474 Спасибо сказали: 32 раз(а) Репутация: 3 |
Тоже интересно. Вот только цвет почему-то нельзя задавать так QColor(Qt::green), рисуется не зеленая рамка.
|
|
|
SABROG |
15.4.2009, 8:50
Сообщение
#8
|
Профессионал Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: 34 |
|
|
|
igor_bogomolov |
15.4.2009, 9:01
Сообщение
#9
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
А если цвет QPen'a поменять у painter'a? Никак не влияет.Тоже интересно. Вот только цвет почему-то нельзя задавать так QColor(Qt::green), рисуется не зеленая рамка. У меня такое впечатление что цвет там задается следущим образом QColor ( int h, int s, int v), т.е. передавать в HSV. По крайней мере QColor(0,255,255) рисует красным. Другие цвета не проверял.-------------- Проверил двугие цвета. Не получается цвет так задать. Непонятным образом цвет искажается??? Сообщение отредактировал igor_bogomolov - 15.4.2009, 10:49 |
|
|
panter_dsd |
15.4.2009, 11:31
Сообщение
#10
|
Жаждущий знаний Группа: Участник Сообщений: 254 Регистрация: 1.1.2009 Из: Санкт-Петербург Пользователь №: 474 Спасибо сказали: 32 раз(а) Репутация: 3 |
Скорее всего цвет подбирается контрастом к другому цвету.
|
|
|
Текстовая версия | Сейчас: 19.11.2024, 23:06 |