我遇到问题QMenu
,每次拨打aboutToHide()
时都会发出QGraphicsScene::addWidget()
。在堆栈中,我可以看到addWidget()
之后生成的鼠标事件,但我无法弄清楚它在哪里生成。
//Window constructor:
...
QTimer* timer = new QTimer;
timer->setInterval(500);
QGLFormat fmt;
fmt.setSampleBuffers(true);
fmt.setSamples(2);
ui->graphicsView->setViewport(new QGLWidget(fmt, this));
QGraphicsScene* scene = new QGraphicsScene(this);
ui->graphicsView->setScene(scene);
connect(timer, SIGNAL(timeout()), this, SLOT(addLabel()));
...
Window::addLabel()
{
QLabel* label = new QLabel("LABEL");
QGraphicsProxyWidget* proxy = ui->graphicsView->scene()->addWidget(label);
}
然后我得到一个每半秒关闭的菜单。