Нужна помощь в том, как получить путь к каталогу для выбранной папки и установить его в LineEdit.PyQt5 Восстановить каталог папок и установить его в lineEdit
У меня есть следующий простой графический интерфейс
Если я нажал ToolButton (кнопка внутри красного круга), то диалоговое окно будет всплывающее. Затем мы можем перейти к выбору нужной папки. Я хочу, чтобы я мог передать путь (в строке) к выбранной папке в поле lineEdit рядом с кнопкой, как только пользователь нажмет кнопку «Выбрать папку». Однако я не мог понять, как это сделать. До сих пор вот мой код:
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_TestQFileDialog(object):
def _open_file_dialog(self): # a function to open the dialog window
result = str(QtWidgets.QFileDialog.getExistingDirectory())
print(result)
return result
def setupUi(self, TestQFileDialog):
TestQFileDialog.setObjectName("TestQFileDialog")
TestQFileDialog.resize(240, 320)
self.toolButtonOpenDialog = QtWidgets.QToolButton(TestQFileDialog)
self.toolButtonOpenDialog.setGeometry(QtCore.QRect(210, 10, 25, 19))
self.toolButtonOpenDialog.setObjectName("toolButtonOpenDialog")
directory = self.toolButtonOpenDialog.clicked.connect(self._open_file_dialog)
self.lineEdit = QtWidgets.QLineEdit(TestQFileDialog)
self.lineEdit.setEnabled(False)
self.lineEdit.setGeometry(QtCore.QRect(10, 10, 191, 20))
self.lineEdit.setObjectName("lineEdit")
self.lineEdit.setText('{}'.format(directory))
self.retranslateUi(TestQFileDialog)
QtCore.QMetaObject.connectSlotsByName(TestQFileDialog)
def retranslateUi(self, TestQFileDialog):
_translate = QtCore.QCoreApplication.translate
TestQFileDialog.setWindowTitle(_translate("TestQFileDialog", "Dialog"))
self.toolButtonOpenDialog.setText(_translate("TestQFileDialog", "..."))
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
TestQFileDialog = QtWidgets.QDialog()
ui = Ui_TestQFileDialog()
ui.setupUi(TestQFileDialog)
TestQFileDialog.show()
sys.exit(app.exec_())
Пробовал включать печать в _open_file_dialog функции, и он напечатал путь к каталогу. Однако он не был возвращен и сохранен в переменной каталога.
Любые советы будут высоко оценены.
Спасибо и уважение,
Арнольд