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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: wheelEvent  (Прочитано 6918 раз)
L.Marvell
Гость
« : Август 02, 2005, 17:10 »

при скроллинге должна показываться следующая/предыдущая картинка, но картинки показываются через одну, т.е. шаг скроллинга явно больше, чем 1 (это в винде). Смотрел настройки грызуна, шаг стоит 1 линия на скролл. Подскажите пожалуйста как исправить сие дело.
Записан
Sergeich
Гость
« Ответ #1 : Август 04, 2005, 03:06 »

QApplication::setWheelScrollLines ( int n )
Записан
L.Marvell
Гость
« Ответ #2 : Август 04, 2005, 12:10 »

Цитата: "Sergeich"
QApplication::setWheelScrollLines ( int n )

Не помогает, ставлю в main.cpp app.setWheelScrollLines(1), но эфекта никакого. У меня скроллер с тиками (или как оно там) и вот при каждом тике перепрыгивает через фотку, уже и не знаю, что делать.
Записан
L.Marvell
Гость
« Ответ #3 : Август 04, 2005, 12:23 »

При том setWheelScrollLines() вообще никак не влияет на мою прогу - ставил 3, все равно прыгает через одну картинку, хотя казалось должно через 3 (или 2, ну вобщем неважно, не работает Грустный )
Записан
L.Marvell
Гость
« Ответ #4 : Август 04, 2005, 17:53 »

Итак, следующая конструкция при скроллинге показала целых два меседж бокса (это я хотел проверить, что вообще содержит event->delta()):

Код:
void MScrollArea::wheelEvent(QWheelEvent *event)
{
QMessageBox(this, tr("message"), QString::number(event->delta()));
}

После чего следующий код (возможно не очень красивый, но это первое, что пришло в голову) исправил ситуацию с перепрыгиванием картинок:

Код:
...
int eventCount = 0;
...

void MScrollArea::wheelEvent(QWheelEvent *event)
{
if (eventCount == 1) {
if (event->delta() > 0) {
...
}else{
...
}
eventCount = 0;
}else{
++eventCount;
}
}

Спасибо всем за внимание.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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