我正在尝试构建可以并行比较图像的工具。为此,我在QT中使用了三个图形视图小部件。它们都以相同的速度缩放,但是我似乎无法在网上找到有关如何链接图像运动的任何东西(又名-用鼠标拖放)。是否可以构建此功能?

GUI如下所示:

图像比较GUI

最佳答案

嗯,每次我使用QGraphicsView时,我都会对其进行子类化,因为它没有“公开”提供我所需的一切。

但就您的情况而言,我认为这很简单:

connect(graphicsView1->verticalScrollBar(), SIGNAL(valueChanged(int)),
        graphicsView2->verticalScrollBar(), SLOT(setValue(int)));
connect(graphicsView2->verticalScrollBar(), SIGNAL(valueChanged(int)),
        graphicsView1->verticalScrollBar(), SLOT(setValue(int)));


如果愿意,请调用一些插槽以执行一对多的操作:

void MyClass::scrollGraphicsView1(int value)
{
    graphicsView1->verticalScrollBar()->setValue(value);
}
void MyClass::scrollGraphicsView2(int value)
{
    graphicsView2->verticalScrollBar()->setValue(value);
}

关于c++ - 如何同步多个QT图形 View 小部件之间的移动,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43147334/

10-11 23:16