槽函数里的sender()函数返回的对象指针和记录在QList中的对象指针比较,
我转换sender()返回的对象为器对象指针,在和原本记录在QList中的对象比较,如果相同就提出来,可是却找不到相同项,有熟悉指针的高手解答下疑问啊
- void MainFrame::updateRecvProgress(int bytesRead, int totalBytes)
- {
- Http *http = qobject_cast<Http *>(sender());
- Task task = taskWithHttp(http);
- alert(tr("警告"),task.http->test());
- }
- Task MainFrame::taskWithHttp(Http *http) const
- {
- foreach (Task task, tasks){
- // if (task.http == http)
- return task;
- }
- Task task;
- task.http = 0;
- task.address = "NON";
- task.savepath = "NON";
- return task;
- }
去掉判断可以取到第一条记录,如上所示