• 4995阅读
  • 1回复

【提问】求救,关于qtimer连接的问题 [复制链接]

上一主题 下一主题
离线wlg7705
 

只看楼主 倒序阅读 楼主  发表于: 2005-10-09
【提问】求救,关于qtimer连接的问题
— 本帖被 XChinux 执行加亮操作(2008-05-11) —
代码如下:
hello.h
# include <qapplication.h>
# include <qwidget.h>
# include <qtimer.h>
# include <qlist.h>
# include <qpainter.h>
class MyMainWindow:public QWidget
{
//Q_OBJECT
public:
    MyMainWindow(QWidget *parent=0);
    void paintEvent(QPaintEvent*);
private slots:
    void slotread();
private:
    QPushButton * b1;
    QTimer * readtimer;
};
struct Point
{
int x,y;
};
hello.cpp
# include "hello.h"
QList<Point> pa;
int i=50;
MyMainWindow::MyMainWindow(QWidget *parent):QWidget(parent)
{
readtimer=new QTimer(this);
QObject::connect(readtimer,SIGNAL(timeout()),this,SLOT(slotread()));
readtimer->start(2000);
}
void MyMainWindow::slotread()
{
readtimer->stop();
Point *p=new Point;
p->x=i++;
p->y=i++;
pa.append(p);
readtimer->start(2000);
repaint(p->x,p->y,1,1);
}
void MyMainWindow::paintEvent(QPaintEvent*)
{
QPainter p;
p.begin(this);
p.setPen(QPen(Qt::black));
Point *b;
for(b=pa.first();b!=0;b=pa.next())
p.drawPoint(b->x,b->y);
p.end();
}
问题是qtimer的槽连接不上或信号发不出来,画不出点来.请大家指点一下,谢谢!
[ 此贴被fanyu在2005-10-10 10:47重新编辑 ]
离线renxingwang
只看该作者 1楼 发表于: 2008-05-11
将调用函数中的readtimer->start(2000);去掉
快速回复
限100 字节
 
上一个 下一个