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

UI フォームで作業する場合は、スライダーを右クリックし、[スロットに移動...] を選択して、sliderMoved(int) スロットを選択します。Qt によって作成された自動スロット内では、on_slider_sliderMoved(int position) である必要があります。そこにコードを挿入するだけです。おそらく、この実装はさらに役立つはずです:

Qt スライダーバーを使用して DICOM シリーズを表示する

于 2013-03-11T05:27:55.703 に答える