Qt QWheelEvent не работает в мульти-прокрутке
Я использую QWheelEvent для увеличения и уменьшения масштаба. Когда я прокручиваю одну за другой, программа работает хорошо, но когда используется мульти-прокрутка (быстро вращайте колесико мыши), программа не работает нормально. Я отлаживаю его и понимаю, что при многократной прокрутке для увеличения, некоторые события ложные (уменьшение). Может кто-нибудь мне помочь! часть кода:
bool zoom_out_scope=false;
bool zoom_in_scope=false;
if(event->angleDelta().y()==120)
zoom_in_scope=true;
else
zoom_out_scope=true;
0 ответов
Я тоже заметил это на своем ноутбуке, angleDelta
ценности не всегда +/-120
. Вот журнал с моего ноутбука.
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(-11,0))
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(-5,0))
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(-5,0))
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(0,3))
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(-7,1))
QWheelEvent(Qt::NoScrollPhase)
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(-2,1))
QWheelEvent(Qt::NoScrollPhase)
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(-4,3))
QWheelEvent(Qt::NoScrollPhase)
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(-1,0))
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(-1,1))
QWheelEvent(Qt::NoScrollPhase)
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(0,1))
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(-1,1))
QWheelEvent(Qt::NoScrollPhase)
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(0,3))
QWheelEvent(Qt::NoScrollPhase, pixelDelta=QPoint(0,0), angleDelta=QPoint(0,1))