我正在使用QTimer,并且没有发出超时信号。
这是我的代码:
console.log("Hello World."); // Output : "Hello World."
console.log = function (param) {return;}
console.log("Hello World."); // Output : nothing.
起初,我在类构造函数中定义了计时器,但是它也不起作用。
答案 0 :(得分:0)
您可以将其添加到循环中
QCoreApplication::processEvents(QEventLoop::AllEvents, 100);
或
QApplication::processEvents(QEventLoop::AllEvents, 100);
我在qt中的“睡眠”功能:
void WebView::delay(int sec)
{
QTime dieTime= QTime::currentTime().addSecs(sec);
while (QTime::currentTime() < dieTime)
QCoreApplication::processEvents(QEventLoop::AllEvents, 100);
}
如果我正确理解你,那么你想要的不是这样的东西:
QByteArray res;
QTime dieTime= QTime::currentTime().addSecs(sec);
while (!res.contains("OK\r\n") && QTime::currentTime() < dieTime) {
QCoreApplication::processEvents(QEventLoop::AllEvents, 100);
qDebug() << res.append(sPort->read(1));
}