【问题标题】:PyQt Open File Dialog - Display Path NamePyQt 打开文件对话框 - 显示路径名
【发布时间】:2015-10-22 01:48:18
【问题描述】:

使用 PyQt,我创建了一个可以从任何目录选择和上传文件的按钮。如何在按钮旁边创建一个文本框来显示所选或打开的文件的路径?

这是我的示例代码:

    self.uploadButton = QtGui.QPushButton('UPLOAD SDF', self)
    self.runfilterButton = QtGui.QPushButton('Run Filter', self)
    self.printimagesButton = QtGui.QPushButton('Display Matches Images', self)
    self.listmatchesButton = QtGui.QPushButton('List Matches', self)

    self.uploadButton.move (100, 50)
    self.runfilterButton.move (400,50)
    self.printimagesButton.move (200, 100)
    self.printimagesButton.resize (200, 50)
    self.listmatchesButton.move (200, 150)
    self.listmatchesButton.resize (200, 50)
    hBoxLayout = QtGui.QHBoxLayout()

    hBoxLayout.addWidget(self.uploadButton)
    hBoxLayout.addWidget(self.runfilterButton)
    self.setLayout(hBoxLayout)
    # Signal Init.
    self.connect(self.uploadButton, QtCore.SIGNAL('clicked()'), self.open)
    self.runfilterButton.clicked.connect(runfilterx)
    self.printimagesButton.clicked.connect(printimages)
    self.listmatchesButton.clicked.connect(listmatches)

【问题讨论】:

    标签: file python-2.7 user-interface file-upload pyqt


    【解决方案1】:

    首先您需要创建一个 TextEdit 对象,例如 self.myTextBox = QtGui.QTextEdit(self)。之后将其放置在屏幕上您想要的任何位置。然后你需要将它与你的open 函数连接起来。它应该看起来像这样。

    def open(self):
        fileName = QtGui.QFileDialog.getOpenFileName(self, 'OpenFile')
        self.myTextBox.setText(fileName)
        print(fileName)
    

    这将在您的textBox 上显示所选文件的路径。

    【讨论】:

      【解决方案2】:

      如果您的项目中有多个QFileDialog 作业,您只能使用一种方法将TextEdit(或LineEdit)与QPushButton 连接起来:

      def getPath(self , targetTextEdit , targetPushButton):
              targetPushButton.clicked.connect(lambda: targetTextEdit.setText(QtWidgets.QFileDialog.getOpenFileName(self, 'OpenFile')[0]))  
      
      self.getPath( self.textEdit1 ,self.pushButton1)
      self.getPath( self.textEdit2 ,self.pushButton2)
      .
      .
      .
      

      【讨论】:

        猜你喜欢
        • 2011-03-05
        • 2010-11-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多