当前位置: 代码迷 >> QT开发 >> qt设计bmp图片的滚动缩放及其他处置
  详细解决方案

qt设计bmp图片的滚动缩放及其他处置

热度:199   发布时间:2016-04-25 03:03:56.0
qt设计bmp图片的滚动缩放及其他处理
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);
}
  相关解决方案