Вот код:
class MainWindow(QWidget):
def __init__(self) -> None:
self.select_folder = ""
super().__init__()
self.resize(300, 100)
self.setUi()
def create_button(self) -> QPushButton:
button = QPushButton("Путь к датасету")
self.select_folder = button.clicked.connect(lambda: on_clicked_button(self))
return button
def create_button1(self) -> QPushButton:
button = QPushButton("Создать файл аннотацию исходного датасета")
button.clicked.connect(lambda: on_clicked_button_for_make_dataset(self, self.select_folder))
return button
def create_button2(self) -> QPushButton:
button = QPushButton("создания датасета с другой организацией файлов ")
button.clicked.connect(lambda: on_clicked_button_for_make_dataset(self, self.select_folder))
return button
def create_button3(self) -> QPushButton:
button = QPushButton("Следующая картинка tiger")
return button
def create_button4(self) -> QPushButton:
button = QPushButton("Следующая картинка leopard")
return button
во втором файле:
def on_clicked_button(main_windows: QWidget) -> str:
folderpath = str(QtWidgets.QFileDialog.getExistingDirectory(main_windows, "Выберите папку"))
print(f"Вы выбрали: {folderpath}")
return folderpath
при просмотре через дебагер функция нормально отрабатывает. Возвращает путь к папке. Но при вызове этой функции:
def on_clicked_button_for_make_dataset(main_windows: QWidget, select_folder: str) -> None:
print(select_folder)
folderpath = QtWidgets.QFileDialog.getExistingDirectory(main_windows, "Выберите папку")
print(f"Вы выбрали: {folderpath}")
create_dataset(select_folder, folderpath)
Значение переменной select_folder равно "". Что не так?