0

我对 qvtkwidget 有疑问。我有一个带有 vtkimageplanewidget 的立方体,并且我已经在滑块和它们之间建立了连接,但是当我在 qvtkwidget 中使用鼠标更改平面时,我希望滑块也可以更改。

我怎样才能做到这一点?

这是我将滑块连接到飞机的方法。

投币口:

void planevolume::SplaneXpixel()
{
    double xvalue=ui->Slider->value();
    planeX->SetSliceIndex(xvalue);
    ui->qvtkWidget->update();
}

进而:

  connect(ui->Slider, SIGNAL(valueChanged(double)), this, SLOT(SplaneXpixel()));

相反的呢?我试过:

投币口:

void planevolume::planeXSpixel()
{
    double xvalue=planeX->GetSliceIndex();
    ui->Slider->setValue(xvalue);
    ui->qvtkWidget->update();
}

进而:

connect(ui->qvtkWidget, SIGNAL(mouseEvent(QMouseEvent*)), SLOT(planeXSpixel()));

但它不会工作,任何人都可以帮助我吗?

4

2 回答 2

1

我相信您正在寻找 vtkEventQtSlotConnect。这是一个示例: http ://www.vtk.org/Wiki/VTK/Examples/Cxx/Qt/EventQtSlotConnect

于 2012-11-14T00:55:13.000 回答
0

If you work with the UI form, right click the slider, choose "Go to slot..." and select the sliderMoved(int) slot. Inside the automated slot created by Qt, it should be on_slider_sliderMoved(int position). just insert your code there. maybe this implementation should help you further:

Displaying DICOM Series using the Qt sliderbar

于 2013-03-11T05:27:55.703 回答