![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Andrewshkovskii |
![]()
Сообщение
#1
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
Что нужно : получить координаты ползунка у слайдера.
Зачем : для того, что бы реализовать вот это ![]() т.е рисовать линию на QGraphicView прямо под ползунком. Необходимо учесть, что максимальное значение слайдера может меняться во время выполнения программы. Сообщение отредактировал Andrewshkovskii - 13.10.2009, 13:41 |
|
|
kwisp |
![]()
Сообщение
#2
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
Andrewshkovskii,
а вычислять координату в соответсвии с QSlider::pos() & QSlider::sliderPosition() не пробовал? |
|
|
Andrewshkovskii |
![]()
Сообщение
#3
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
Не смотрел ещё.
pos() возвратит позицию виджета относительно родительского? у меня просто сладер лежит в лейауте3, который лежит в лейауте2, а лейаут2, лежит в лейауте1...Я так понимаю он вернет позицию левого верхнего угла слайдера? А вот sliderPosition не понятно, возвращает int, это число относительного чего, и чем является?.. ![]() |
|
|
kwisp |
![]()
Сообщение
#4
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
можно узнать глобальные координаты слайдера
а sliderPosition() это позиция ползунка в int ты сам задаешь градацию. обычно от 0 до 100. |
|
|
Andrewshkovskii |
![]()
Сообщение
#5
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
Глобальные я понял как найти..а вот QSlider::SliderPosition возвращает int QSlider::value() .. а нужно как-то узнать, как найти координату ползунка, что бы под ним на нарисовать линию, до нижней координаты QGraphicView..
|
|
|
kwisp |
![]()
Сообщение
#6
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
ну раздели длину в всего слайдера на максимальное значение value() получишь примерное прирощение координаты ползунка на единицу value()
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#7
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
А вот sliderPosition не понятно, возвращает int, это число относительного чего, и чем является? Цитата If tracking is enabled (the default), this is identical to value. Andrewshkovskii, я думаю тут без наследования не обойтись. Стоит поменять стиль и все размеры изменятся. Лучше унаследоватся и получить доступ к внутренностям. |
|
|
Andrewshkovskii |
![]()
Сообщение
#8
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
Ну стиль меняться не будет, это лаба, а не продакшн код:) Просто потраченное время не будет стоить результата...
Конечно, если смотреть со стороны получаемого опыта.. В общем попробую так, как посоветовал kwisp |
|
|
Andrewshkovskii |
![]()
Сообщение
#9
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
ну раздели длину в всего слайдера на максимальное значение value() получишь примерное прирощение координаты ползунка на единицу value() Подумал я..именно так не получиться, если длина слайдера , допустим будет 254, а макс. значение 7400.. то результат будет меньше 1..я понимаю, что это примерное значение получается..но не настолько же)) |
|
|
kwisp |
![]()
Сообщение
#10
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
если честно не пойму.
ты все равно такие мелкие передвижения не увидишь на одно деление из 7400. просто у тебя шаг будет double и всё. берешь value() и узнаешь сколько там пикселей уместилось. |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 1.9.2024, 3:50 |