【问题标题】:(Py)Qt: problem with image downloading(Py)Qt:图片下载问题
【发布时间】:2011-05-17 23:21:18
【问题描述】:

伙计们
我想在QTextEdit 中显示一些带有标题的图像。我有一本带有标题和相应 URL 的字典。问题是当我使用QNetworkAccessManager 发布请求并等待信号finished(QNetworkReply*) 时,我只收到带有图像的回复。如何确定请求此图像的相应标题?

def _init_(self)
    manager = QNetworkAccessManager(self);
    self.connect(manager, SIGNAL("finished(QNetworkReply*)"), self.add_record)
    for record in dict:
        manager.get(QNetworkRequest(QUrl(status['caption'])))

def add_record(self, reply):
    img = QImage()
    img.loadFromData(reply.readAll())
    self.textEdit.textCursor().insertImage(img)
    #I don't know at this point for which caption
    #I've received this image
    #self.textEdit.append(record['text'] + '\n');

是否有针对此问题的设计模式?我会很感激任何想法

【问题讨论】:

    标签: python qt pyqt pyqt4 image-loading


    【解决方案1】:

    假设是最近的 Qt 版本,QNetworkReply::request() 会给你一个指向触发这个回复的QNetworkRequest 的指针。

    因此,您可以通过QNetworkRequest::url() 访问您想要的信息。

    【讨论】:

    • 并且使用 url 我可以在我的字典中确定它的标题。非常感谢!
    • 有问题。我可能会在字典中存储相同的 url,这就是为什么会为一张图片显示多个标题
    • 可以通过setOriginatingObject(QObject)将原始对象附加到请求中,但是如何将long或str转换为QObject?为什么它对setOriginatingObject(QString) 不起作用?
    • @nikagra:这个问题要求从请求中获取标题。我相信你明白了。现在你有一个不同的问题 - 所以打开一个新问题。
    猜你喜欢
    • 1970-01-01
    • 2023-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多