У меня есть класс с методом обратного вызова, который вызывает несколько других методов, потому что, если я правильно понимаю, вы не можете передавать аргументы нажатию кнопки.
Это мой метод обратного вызова:
class MainApplication(tk.Frame):
....
def callback(self):
browsed_path = self.browse_button()
if(os.path.isdir(browsed_path)):
self.download_file_from_server(local_path=browsed_path, multiple_folders = v.get())
self.processing(local_path = browsed_path, tk=tk)
self.wrong_files(local_path = browsed_path)
....
Я использую эту кнопку следующим образом:
button1 = tk.Button(text='Wähle einen Pfad und starte Download', command = MainApplication.callback, bg='brown', fg='white', font=('helvetica', 9, 'bold'))
canvas1.create_window(300, 140, window=button1)
Это дает мне следующую ошибку:
callback() missing 1 required positional argument: 'self'
Ну, я думаю, я должен использовать self в качестве другого аргумента сослаться на мой фактический класс.