我正在尝试在 QGraphicsView 中移动精灵。我用 :
connect(timer, SIGNAL(timeout()), scene, SLOT(advance()));
timer->start(1000/33);
但是我的精灵没有重新绘制。我必须做 alt-tab 来更新视图。
我正在尝试在 QGraphicsView 中移动精灵。我用 :
connect(timer, SIGNAL(timeout()), scene, SLOT(advance()));
timer->start(1000/33);
但是我的精灵没有重新绘制。我必须做 alt-tab 来更新视图。
在第一阶段,所有项目都被通知场景即将改变,在第二阶段,所有项目都被通知他们可以移动。
文档暗示这是一个场景项目的动画通知工具,它没有说明实际更新视图。您可能需要将QTimer::timeout()
信号连接到QGraphicsScene::update()
插槽。
与此类似(QGraphicsScene 缺少特定项目更新),您只需使场景中的对象无效,并让场景负责更新。