<div><div>test code</div><div>https://bpaste.net/show/79b893f0d9fd</div><div><br></div><div>The PyQt4 version of the same code , self.sender() in downloadProgress,no matter decorated with @pyqtSlot(int, int) or not, returns a QNetworkReply ,the direct object that sent the signal, when on_deleteTasks_triggered(),</div><div><br></div><div>while in PyQt5,it  returns the original object that sent the signal,thus throw out error </div><div><br></div><div>Traceback (most recent call last):</div><div>  File "E:\network.py", line 67, in downloadProgress</div><div>    print(reply, reply.error())</div><div>AttributeError: 'QAction' object has no attribute 'error'</div><div><br></div><div><br></div><div>QObject::sender() should return the DIRECT object that sent the signal in this case or else cause so many problems .</div><div><br></div><div><br></div><div style="color: rgb(0, 0, 0); font-family: arial; font-size: 14px;"><br></div><div style="color: rgb(0, 0, 0); font-family: arial; font-size: 14px;"><br></div><div style="color: rgb(0, 0, 0); font-family: arial; font-size: 14px;"><br></div><div style="color: rgb(0, 0, 0); font-family: arial; font-size: 14px;"><br></div></div><!-- jy5ContentSuffix --><div>在2015年04月05 23时56分, "Detlev Offenbach"<detlev@die-offenbachs.de>写道:</div><blockquote id="isReplyContent" style="padding-left:1ex; margin: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid"><br>Some people have reported the very same issue for eric as well. However, it doesn’t seem to be reproducible (maybe a memory corruption issue).<br><br>Detlev<br><br>> Am 05.04.2015 um 13:10 schrieb Yuya Nishihara <<a href="mailto:yuya@tcha.org">yuya@tcha.org</a>>:<br>> <br>> On Sun, 5 Apr 2015 11:17:18 +0800 (CST), redstone-cold wrote:<br>>> sorry ,I posted the wrong code last time, this is the right code <br>>> https://bpaste.net/show/a8a5c72f9c0c<br>>> for slotFinished() if decorated with @pyqtSlot() in PyQt5 seems works fine ,<br>>> but if not ,<br>>> <br>>> Traceback (most recent call last):<br>>>  File "E:\network.py", line 57, in slotFinished<br>>>    print(reply, reply.error())<br>>> AttributeError: 'QAction' object has no attribute 'error'<br>>> <br>>> PyQt4 doesn't care if  slotFinished() decorated with @pyqtSlot() or not ,<br>>> while PyQt5 does ,anyone can explain why ?<br>> <br>> Perhaps, reply.abort() doesn't emit finished() immediately (i.e. in the same<br>> call stack) on your Qt4 environment. My PyQt4 has the same issue.<br>> <br>>  Debian Linux sid<br>>  libqt4-core 4:4.8.6+git64-g5dc8b2b+dfsg-3<br>>  python-qt4 4.11.2+dfsg-1<br>> <br>> Regards,<br>> _______________________________________________<br>> PyQt mailing list    <a href="mailto:PyQt@riverbankcomputing.com">PyQt@riverbankcomputing.com</a><br>> http://www.riverbankcomputing.com/mailman/listinfo/pyqt<br><br>Detlev Offenbach<br><a href="mailto:detlev@die-offenbachs.de">detlev@die-offenbachs.de</a><br><br><br><br></blockquote><br><br><span title="neteasefooter"><span id="netease_mail_footer"></span></span>