NJ8888 发表于 2015-2-12 11:40:48

学QT Creator 加定时器,发现关联超时槽未能进入,不知哪里疏忽

本帖最后由 NJ8888 于 2015-2-12 14:27 编辑

mainwindow.h中
class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();
   void paintEvent(QPaintEvent *);

public slots:
    void timeUpDate();
...........

}
mainwindow.cpp中
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{

    ui->setupUi(this);
    offset=20;
    QTimer *timer=new QTimer(this);
    connect(timer,SIGNAL(timerout()),this,SLOT(timeUpDate()));
    timer->start(100);
}

void MainWindow::timeUpDate()
{
offset++;
    update();
}

void MainWindow::paintEvent(QPaintEvent *event)
{
.........
}




..........................结贴,8楼指出我的错误,谢谢

ysu533 发表于 2015-2-12 11:45:36

没看出什么问题. 如果是非要紧代码, 方便的话可以把整个工程打包上来看看

NJ8888 发表于 2015-2-12 11:50:08

ysu533 发表于 2015-2-12 11:45
没看出什么问题. 如果是非要紧代码, 方便的话可以把整个工程打包上来看看

传了,代码意思是想开定时移动一串波形

licheng0620 发表于 2015-2-12 11:51:32

没包含头文件<Qtime>?

NJ8888 发表于 2015-2-12 11:53:20

licheng0620 发表于 2015-2-12 11:51
没包含头文件?

cpp中有包含

licheng0620 发表于 2015-2-12 11:55:54

NJ8888 发表于 2015-2-12 11:53
cpp中有包含

放在.h中试试

NJ8888 发表于 2015-2-12 12:17:50

licheng0620 发表于 2015-2-12 11:55
放在.h中试试

试了效果没有不同

ysu533 发表于 2015-2-12 12:56:46

刚吃饭去了, 运行时提示的:
Object::connect: No such signal QTimer::timerout() in ..\untitled3\mainwindow.cpp:23
Object::connect:(receiver name: 'MainWindow')
没看到吗?
timeout 写成 timerout了

345161974 发表于 2015-2-12 12:59:25

connect(timer,SIGNAL(timerout()),this,SLOT(timeUpDate()));

NJ8888 发表于 2015-2-12 14:26:28

ysu533 发表于 2015-2-12 12:56
刚吃饭去了, 运行时提示的:
Object::connect: No such signal QTimer::timerout() in ..\untitled3\mainwin ...

谢谢,是名字错了.现在进槽了,这步算过了,只是槽里我写的还不对,不是想要的效果.

Excellence 发表于 2015-2-12 14:41:24

哇,开始学习QT了。
好。。。

磊磊映画 发表于 2015-9-13 12:13:30

NJ8888 发表于 2015-2-12 14:26
谢谢,是名字错了.现在进槽了,这步算过了,只是槽里我写的还不对,不是想要的效果. ...

你好 你槽函数的错误跟你 信号的错误一样 槽函数的名字应该是timerUpDate()你又少写了一个r

NJ8888 发表于 2015-9-13 12:19:49

磊磊映画 发表于 2015-9-13 12:13
你好 你槽函数的错误跟你 信号的错误一样 槽函数的名字应该是timerUpDate()你又少写了一个r ...

谢谢谢谢

磊磊映画 发表于 2015-9-13 13:40:25

本帖最后由 磊磊映画 于 2015-9-13 13:48 编辑

connect(timer,SIGNAL(timeout()),this,SLOT(timerUpDate()));
其实我也犯了同样的错误,找了半天找出来了低级错误
页: [1]
查看完整版本: 学QT Creator 加定时器,发现关联超时槽未能进入,不知哪里疏忽