对于qtwebkit中的change POST变量,需要在createRequest(…)中更改或替换outgoingData。
如何创建自己的<PyQt4.QtCore.QIODevice object at 0x03BA...>
而不是QFile或QByteArray。
正是QIODevice对象!它是创建可写设备所必需的。
或者如何将<PyQt4.QtCore.QBuffer object at 0x03BA...>
转换为<PyQt4.QtCore.QIODevice object at 0x03BA...>
。
QNetworkAccessManager中最常用的设备:
https://qt.gitorious.org/qt/webkit/source/7647fdaf9a4b526581e02fbd0e87c41a96cbfebb:src/network/access/qnetworkaccessmanager.cpp#L941
QNetworkReply *QNetworkAccessManager::createRequest(QNetworkAccessManager::Operation op,
const QNetworkRequest &req,
QIODevice *outgoingData)
...
更新:调用此方法后:
^{pr2}$脚本挂断。。。在
如果我理解您的问题,那么
QBuffer
已经是(抽象的,如@mdurant)QIODevice
类的实现。例如(我在PySide上尝试过,但我相信PyQt应该是一样的):要创建写入
^{pr2}$QIODevice
的可写QByteArray
,您可以或多或少地执行以下操作:您现在可以像写
buff
一样写入QIODevice
,然后数据将在ba
中可用。在基本上你很接近,我想知道你为什么没有出现分段错误,每次我没有设置新数据对象的父对象时都会发生这种情况:
我在这里写过这个问题:https://github.com/integricho/path-of-a-pyqter/tree/master/qttut07
相关问题 更多 >
编程相关推荐