Russian Qt Forum
Ноябрь 25, 2024, 05:39 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QSlider: Вопрос по изменению текущего положения слайдера.  (Прочитано 5886 раз)
Axel
Гость
« : Май 26, 2008, 14:51 »

Здравствуйте !!!
Подскажите пожалуйста, как при клике мыши на полосе прокрутки заставить слайдер смещаться именно в то место, где был клик ? По умолчанию, слайдер смещается согласно pagestep.
Записан
ритт
Гость
« Ответ #1 : Май 26, 2008, 15:18 »

QStyle::sliderValueFromPosition(...)
setSliderPosition(...)
Записан
Axel
Гость
« Ответ #2 : Май 26, 2008, 15:36 »

Если не трудно, можно пример, не очень понятно как это использовать.
Записан
ритт
Гость
« Ответ #3 : Май 26, 2008, 15:46 »

Код:
void SomeSlider::mouseMoveEvent(QMouseEvent* event)
{
QStyleOptionSlider opt;
initStyleOption(&opt);

int left = 0;
int right = width();

int newPosition = QStyle::sliderValueFromPosition(minimum(), maximum(), event->pos().x() - left, right - left, opt.upsideDown);
setSliderPosition(newPosition);
}
Записан
Axel
Гость
« Ответ #4 : Май 26, 2008, 16:19 »

Большое спасибо!!!
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.045 секунд. Запросов: 21.