2017-06-15 89 views
0

我想检索所选路径的字符串变量。PyQt:如何从对话框函数返回一个变量?

class ExampleApp(QtGui.QMainWindow, design.Ui_MainWindow): 

def __init__(self): 

    super(self.__class__, self).__init__() 
    self.setupUi(self) 

    A = self.in_browse_button.clicked.connect(self.browser) 

def browser(self): 
    global directory 
    directory = str(QFileDialog.getExistingDirectory()) 
    self.input_edit.setText(directory) 
    return directory 

对话框打开,当我按下按钮,但是当我尝试使用一个变量它的值是。任何想法?

回答

1

此代码

A = self.in_browse_button.clicked.connect(self.browser) 

并不的信号self.browser但结果的clicked结果分配给变量A。 根据documentation,信号clicked不返回任何内容。因此,由于您在班级中,因此我建议您在该班级中定义一个属性并存储QFileDialog的结果。

class ExampleApp(QtGui.QMainWindow, design.Ui_MainWindow): 
    def __init__(self): 
     super(self.__class__, self).__init__() 
     self.setupUi(self) 
     self.directory = None 
     self.in_browse_button.clicked.connect(self.browser) 

    def browser(self): 
     self.directory = str(QFileDialog.getExistingDirectory()) 
     self.input_edit.setText(directory) 
相关问题