meine in einen Dialog eingebettete QGraphicsView wird beim schießen des Dialoges nicht mitgeschlossen. auch ein close auf die view bringt nichts.
Auf folgende Weise rufe ich auf:
Code: Alles auswählen
void DemoArrowDialog::setFullScreenDemo()
{
settings = gwd->saveGeometry();
gwd->graphicsWidget->setListenKeyEvents(true);
gwd->setContentsMargins(0,0,0,0);
gwd->setModal(true);
gwd->graphicsWidget->showFullScreen();
gwd->showFullScreen();
gwd->setFocus();
}Code: Alles auswählen
GraphicsWidgetDialog::GraphicsWidgetDialog(QWidget *parent) :
QDialog(parent)
{
graphicsWidget = new GraphicsWidget;
QGridLayout *layout = new QGridLayout;
layout->addWidget(graphicsWidget);
layout->setContentsMargins(0,0,0,0);
graphicsWidget->loadConfig();
graphicsWidget->loadArrowConfig("Arrow");
graphicsWidget->setArrowPosition(arrowPosition(arrowCenter));
graphicsWidget->update();
setLayout(layout);
connect(graphicsWidget,SIGNAL(closeEvent()),this,SLOT(reject()));
}das graphicsWidget beinhaltet die besagte View, welche folgendermaßen initialisiert wird:
Code: Alles auswählen
scene = new QGraphicsScene;
scene->setItemIndexMethod(QGraphicsScene::BspTreeIndex);
//scene->setSceneRect(0,0,resolution.x(),resolution.y());
view = new QGraphicsView(scene);
view->setViewport(new QGLWidget(QGLFormat(QGL::SampleBuffers)));
view->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
view->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
view->setViewportUpdateMode(QGraphicsView::FullViewportUpdate);
view->setFrameStyle(QFrame::NoFrame);
view->setBackgroundBrush(Qt::white);
view->setRenderHints(QPainter::Antialiasing);
view->setSceneRect(0,0,resolution.x(),resolution.y());