放大/缩小QGraphicsView内部的QTableView

时间:2018-07-26 09:29:18

标签: c++ qt qtableview

与帖子herehere相比,我的问题略有不同。我使用QTableView用搜索栏制作了一个自定义时间轴,其作用类似于音频或视频编辑工具中常见的可视化工具。

实施:

我已经使用QGraphicsView及其内置功能(如setTransformationAnchor)实现了缩放功能,但是缩放功能可缩放其中的整个小部件。

void View::wheelEvent(QWheelEvent* event)
{
    setTransformationAnchor(QGraphicsView::AnchorUnderMouse);

    // Scale the view / do the zoom
    double scaleFactor = 1.15;

    if (event->delta() > 0)
    {
        // Zoom in
        scale(scaleFactor, scaleFactor);
    }
    else
    {
    // Zooming out
    scale(1.0 / scaleFactor, 1.0 / scaleFactor);
    }
}

我想要什么:

  • 要能够放大/缩小QTableView本身,以更仔细地查看单元格。
  • 相应地调整滚动条(水平和垂直)。
  • 在鼠标位置下滚动。
  • 仅在某种程度上放大/缩小不再起作用。

是否可以在TableView上使用QWheelEvent来实现这些目标?我希望能有一些实现的想法。

0 个答案:

没有答案