Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Qt. QTableView (полупрозрачное выделение строки)
|
|||
|---|---|---|---|
|
#18+
День добрый. Как сделать в QTableView полупрозрачное выделение текущей строки? Необходимость в таком выделении возникла после того как, обнаружил что цвет ячеек, получаемый из модели методом data() для роли Qt::BackgroundRole, напрочь перекрывается цветом выделения строки. А хочется видеть всяческие раскраски даже для текущей строки. А если в модели будет 1 строка (т.е. она же текущая), то вообще цвет подкраски никогда не отобразится. Исправить ситуцию с помощью стилей не получилось (назвачение цвета выделения с прозрачностью 30%): Код: plaintext 1. Так же обнаружил, что выделение в Q Tree View и только в стиле WindowsVista работает именно так как мне хотелось (через выделение виден цвет ячеек). Очень хотелось бы добится аналогичного поведения при выделении в QTableView. Пример: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. Скрины во вложении. P.S. Гуглил, но решения так и не нашел Использовал Qt 4.8.5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2013, 14:36 |
|
||
|
Qt. QTableView (полупрозрачное выделение строки)
|
|||
|---|---|---|---|
|
#18+
Действительно, в QTreeView и только в стиле WindowsVista реализовано полупрозрачное выделение строк, а в QTableView – нет. Однако ничто не мешает нам создать собственный стиль, который будет работать всегда. Свой пример мы делаем на базе авторского и статьи в Habrahabr «Создаем стиль интерфейса Qt на примере таблицы» . В этой статье нет прямого решения поставленной задачи, но наводку она дает хорошую. Идея очень простая, мы определяем текущий цвет ячейки в переопределяемой функции Style::drawPrimitive() нашего класса Style и затем модифицируем его нужным образом. Вариантов модификации может быть множество, я выбрал простейший – стандартное затемнение, с некоторым параметром, текущего цвета фона ячейки. Вот ключевой код: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. Пример скрина прилагается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2014, 17:11 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38545470&tid=2019720]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
67ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 16ms |
| total: | 177ms |

| 0 / 0 |
