# QT integration with vtkImageViewer2 in QVTKOpenGLNativeWidget

**URL:** https://discourse.vtk.org/t/qt-integration-with-vtkimageviewer2-in-qvtkopenglnativewidget/12824
**Category:** Support
**Tags:** rendering, code
**Created:** [December 1, 2023, 10:57am UTC](https://discourse.vtk.org/t/qt-integration-with-vtkimageviewer2-in-qvtkopenglnativewidget/12824 "2023-12-01T10:57:22Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![MagicLudo](https://discourse.vtk.org/user_avatar/discourse.vtk.org/magicludo/32/8082_2.png) [@MagicLudo](https://discourse.vtk.org/u/MagicLudo)
#### Post date: [December 1, 2023, 10:57am UTC](https://discourse.vtk.org/t/qt-integration-with-vtkimageviewer2-in-qvtkopenglnativewidget/12824/1 "2023-12-01T10:57:22Z")

</div>

Hello everyone !

I’m new to using QT and VTK and trying to get the two to work together. The actual project is very simple and it’s a test project (few lines of code) for a bigger one.  
I would like to be able to display an image in a QT widget.  
I managed to promote this widget to QVTKOpenGLNativeWidget to properly integrate QT.

However I can’t get the render to be in the QT widget.

I work with QT 6 and VTK 9.3

Thank you in advance for your help !

You can find the full code here: [5.4 KB folder on MEGA](https://mega.nz/folder/pSxQRIjJ#Ep4_Vn_XAMNnrII9OZ4Qzw)

The function to display is:

```auto
void MyClass::DisplayImage() {
    vtkSmartPointer<vtkPNGReader> reader = vtkSmartPointer<vtkPNGReader>::New();
    reader->SetFileName("Brain_1.png");

    vtkSmartPointer<vtkImageViewer2> imageViewer = vtkSmartPointer<vtkImageViewer2>::New();
    imageViewer->SetInputConnection(reader->GetOutputPort());

    QVTKOpenGLNativeWidget* vtkWidget = new QVTKOpenGLNativeWidget();

    this->layout()->addWidget(this->ui->vtkWidget);

    vtkSmartPointer<vtkGenericOpenGLRenderWindow> renderWindow =
        vtkSmartPointer<vtkGenericOpenGLRenderWindow>::New();
    vtkWidget->setRenderWindow(renderWindow);

    vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor =
        vtkSmartPointer<vtkRenderWindowInteractor>::New();
    renderWindowInteractor->SetRenderWindow(renderWindow);

    imageViewer->SetupInteractor(renderWindowInteractor);

    imageViewer->Render();
}

```

Cross copy [here](https://stackoverflow.com/questions/77585628/qt-integration-with-vtkimageviewer2-in-qvtkopenglnativewidget)

---

<div class="post-metadata">

### Author: ![amaclean](https://discourse.vtk.org/user_avatar/discourse.vtk.org/amaclean/32/224_2.png) [@amaclean](https://discourse.vtk.org/u/amaclean)
#### Post date: [December 2, 2023, 7:03am UTC](https://discourse.vtk.org/t/qt-integration-with-vtkimageviewer2-in-qvtkopenglnativewidget/12824/2 "2023-12-02T07:03:40Z")

</div>

This example may help [ImageDataToQImage](https://examples.vtk.org/site/Cxx/Qt/ImageDataToQImage/).
