【qt】定时器timeout事件处理函数一直进不到

问题描述
定时器一直进不到timeout事件处理函数中。代码如下:

int main(int argc, char *argv[])
{
    。。。
    UnitTest test;
    QTimer timer;
    QObject::connect(&timer, SIGNAL(timeout()), &test, SLOT(onTimer()));
    timer.start(1000);
    QGuiApplication app(argc, argv);
    。。。
}

问题原因
timer.start(1000)调用放在app定义前面。

解决办法
timer.start(1000)调用应该放在app定义后面,代码改为:

int main(int argc, char *argv[])
{
    。。。
    UnitTest test;
    QTimer timer;
    QObject::connect(&timer, SIGNAL(timeout()), &test, SLOT(onTimer()));
    QGuiApplication app(argc, argv);
    timer.start(1000);
    。。。
}

你可能感兴趣的:(【qt】定时器timeout事件处理函数一直进不到)