【问题标题】:Python - PyQt4 (Webkit) How to set value of input(type=“file” multiple=“”)?Python - PyQt4 (Webkit) 如何设置输入值(type=“file” multiple=“”)?
【发布时间】:2014-03-22 11:58:16
【问题描述】:

我正在尝试使用 (WebKIt) 的 QWebPage 模块上传文件,例如 this

<form action="#">
Select a file: <input type="file" id="photos_upload_input" multiplie="">
<input type="submit">
</form>

我试试看:

class WebPage(QWebPage):
    def __init__(self, parent = None):
        QWebPage.__init__(self)
        self.overrideUpload = None

    def extension(self, extension, option, output):
        '''
        The behavior of this function is determined by extension . 
        The option and output values are typically casted to the corresponding types (for example, 
        ChooseMultipleFilesExtensionOption and ChooseMultipleFilesExtensionReturn for ChooseMultipleFilesExtension )
        '''
        if self.overrideUpload is None:
            return super(WebPage, self).extension(self, extension, option, output)
        result = self.overrideUpload
        ....?

【问题讨论】:

    标签: python webkit qt4 pyqt4 pyside


    【解决方案1】:

    解决方案:

    ...
    def extension(self, extension, option, output):
        if (extension == self.ChooseMultipleFilesExtension):
            if self.overrideUpload is None:
                return super(WebPage, self).extension(self, extension, option, output)
            file_upl = self.overrideUpload
            self.overrideUpload = None
            output.fileNames = QStringList([file_upl])
            return True
        return False
    ...
    

    【讨论】:

      猜你喜欢
      • 2023-01-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-12
      • 2013-01-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多