Удаление стрелок с полосы прокрутки в Qt - PullRequest
0 голосов
/ 25 января 2010

Я использую маленький черно-белый экран и мне нужна полоса прокрутки, чтобы просто быть черным ползунком в черной внешней рамке. Я получил то, что хотел, используя таблицы стилей, но включение их в конфигурацию при установке занимает слишком много места, поэтому я не могу их использовать. Можно ли убрать стрелки, унаследовав от QStyle или что-то еще? спасибо

Ответы [ 3 ]

1 голос
/ 26 января 2010

Вы должны создать подкласс QStyle (или некоторый подкласс, такой как QCommonStyle) и переопределить его функцию drawComplexControl (), чтобы самостоятельно рисовать элемент CC_ScrollBar.

Подробнее читайте в документации QStyle.

0 голосов
/ 26 января 2010

Вы можете попытаться изменить настройки палитры для своей полосы прокрутки (в соответствии с дизайном цвет стрелки стрелки полосы прокрутки является цветом "кнопки текста"), но этот подход выглядит как маленький взлом ... Более «тяжелый» подход, унаследованный от виджета полосы прокрутки и метода переопределения рисования, но там он выглядит как излишнее ...
Таким образом, вы должны выбрать маленький взломать против перебора :). Хотя, возможно, существует другое решение

0 голосов
/ 26 января 2010

Это может быть глупый ответ, но поможет ли это, если вы просто зададите саму таблицу стилей в коде в качестве аргумента QString для setStyleSheet вместо того, чтобы поддерживать отдельный файл для нее?

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