qt怎么实现bmp图片的滚动缩放(滚动鼠标滚轮进行缩放),鼠标左键进行托移图片,求大神指点,最好有功能函数代码
------解决思路----------------------
void HImageView::wheelEvent(QWheelEvent* e)
{
if( QApplication::keyboardModifiers() == Qt::ControlModifier ) {
// Ctrl键 按下 ==> 缩放
if( e->angleDelta().y() > 0 ) {
zoomIn();
} else {
zoomOut();
}
} else {
QPoint numPixels = e->pixelDelta();
QPoint numDegrees = e->angleDelta() / 2;
if (!numPixels.isNull()) {
m_pVScrollBar->scroll(numPixels.x(), numPixels.y());
} else if (!numDegrees.isNull()) {
int iYOffset = numDegrees.y();
m_pVScrollBar->setSliderPosition(m_pVScrollBar->sliderPosition() - iYOffset);
}
}
QWidget::wheelEvent(e);
}