Как мы можем создать собственный слайдер? - PullRequest
0 голосов
/ 24 октября 2011

Я хочу создать ползунок, содержащий другую ручку ползунка, и хочу нарисовать его в соответствии с положением ручки ползунка на ползунке.

Ответы [ 3 ]

1 голос
/ 25 октября 2011

Вы можете использовать QProxyStyle для переопределения метода drawComplexControl - вам придется рисовать весь элемент управления самостоятельно, так как в QStyle :: ControlElement нет отдельных флагов для частей QSlider.

1 голос
/ 24 октября 2011

возможно, вам стоит взглянуть на это: http://doc.qt.io/qt-4.8/stylesheet-examples.html#customizing-qslider

0 голосов
/ 24 октября 2011

Если я вас правильно понимаю, вам нужен слайдер, который меняет не только положение, но и внешний вид при скольжении, верно?Например, смесь QDial и QSlider, т.е.ползунок с поворотной ручкой.

Если это так, вам нужно будет создать подкласс QSlider или QAbstractSlider (или QDial) и выполнить рисование в своем собственном paintEvent ().Однако обратите внимание, что вы потеряете всю осведомленность о стиле, если вы не заботитесь об этом сами (и это интересная тема сама по себе, для получения дополнительной информации см. http://doc.qt.io/qt-4.8/style-reference.html).

Демонстрации Qt ипримеры, или сам исходный код QSlider / QDial может служить примером того, как перегрузить paintEvent ().

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