|
1Qter豆
线程中,在run函数中,每2秒触发函数 fVisitXml();
void UseThread::run()
{
while(1){
fVisitXml();
sleep(2);
}
为了触发槽SLOT(replyFinished(QNetworkReply*),必须加上exec(),否则触发不了SLOT(replyFinished(QNetworkReply*)),可加上exec(),它会一直执行,run每2秒触发不进来fVisitXml(),该怎么办 ?
void UseThread::fVisitXml()
{
manager = new QNetworkAccessManager();
request = new QNetworkRequest();
request->setUrl(QUrl("http://weather.com.cn/data/sk/101070201.html"));
reply = manager->get(*request);
connect(manager,SIGNAL(finished(QNetworkReply*)),this,SLOT(replyFinished(QNetworkReply*)));
exec();
}
|
最佳答案
查看完整内容
看你这个代码就觉得很有问题
每次进来 你都要new 之前new的对象???
还有就是你说的connect这个,你可以加上第五个参数,忘了是什么名字,反正就那么几个枚举,加上后就是一发送信号,就立即执行槽
|