Qt 如何在运行时将点绘制到QGraphicsView,而不清除以前绘制的点?
我是Qt新手,如何在运行时将点绘制到QGraphicsView而不清除以前绘制的点?我已经实现了一个简单的应用程序,不使用定时器绘制点。我想用定时器更新这个。如何做到这一点?请帮忙Qt 如何在运行时将点绘制到QGraphicsView,而不清除以前绘制的点?,qt,qt4,Qt,Qt4,我是Qt新手,如何在运行时将点绘制到QGraphicsView而不清除以前绘制的点?我已经实现了一个简单的应用程序,不使用定时器绘制点。我想用定时器更新这个。如何做到这一点?请帮忙 QApplication a(argc, argv); QGraphicsScene scene(0,0,640,480); QGraphicsView view(&scene); QPen pen(Qt::black); int x = 0; in
QApplication a(argc, argv);
QGraphicsScene scene(0,0,640,480);
QGraphicsView view(&scene);
QPen pen(Qt::black);
int x = 0;
int y = 0;
double rad = 1;
while(y < 640)
{
scene.addEllipse(x-rad, y-rad, rad*2.0, rad*2.0, QPen(), QBrush(Qt::SolidPattern));
x++;
y++;
}
view.show();
return a.exec();
QApplication a(argc、argv);
(0,0640480);;
QGraphicsView视图(和场景);
QPen笔(Qt::黑色);
int x=0;
int y=0;
双rad=1;
而(y<640)
{
addEllipse(x-rad,y-rad,rad*2.0,rad*2.0,QPen(),QBrush(Qt::SolidPattern));
x++;
y++;
}
view.show();
返回a.exec();
在计时器的插槽中编写绘制点的代码。创建场景、视图和画笔作为MainWindow类的成员变量,并在其构造函数中初始化
从main.cpp调用计时器功能
MainWindow w;
QTimer timer;
QObject::connect(&timer, SIGNAL(timeout()), &w, SLOT(updateStatus()));
timer.start(0);
在MainWindow.cpp中创建了一个插槽,如下所示
void MainWindow::updateStatus()
{
m_scene->addLine(m_x,m_y,m_x,m_y,*m_pen);
m_x++;
m_y++;
}
现在它工作得很好 你的意思是,在计时器的帮助下,你想画点……也就是说,在每个特定的间隔之后,你想画点是的。我需要在不清除之前绘制的点的情况下每秒更新GUI,然后为此实现计时器..但在计时器功能中,我无法更新GUI。我被困在里面了。你能帮帮我吗