Всем здравствуйте, коллеги! Я имею функцию, которая при нажатии на кнопку открывает мне поток для выполнения функций параллельно с интерфейсом и меняет изображение, текст и команду кнопки. Если я нажму на изменённую кнопку, открытый поток должен моментально быть убит, а кнопка смениться на исходную. Пробовал кучу вариантов, но так и не смок разобраться.
Моя функция:
def change_button_state(self):
image_scan_button = customtkinter.CTkImage(
Image.open(“D:/IT/NetworkScanner/resources/play_white_button_icon_22785.png”), size=(30, 30))
image_stop_button = customtkinter.CTkImage(Image.open(“D:/IT/NetworkScanner/resources/Stop-red_37107.png”),
size=(30, 30))
def stop_scan():
self.quit()
self.radiobutton_frame_button.configure(text="Cканировать", image=image_scan_button, fg_color='#217346',
state="normal", command=self.change_button_state)
self.progressbar_1.set(100)
self.progressbar_1.set(0)
self.radiobutton_frame_button.configure(text="Подождите...", image=image_stop_button, state="normal",
command=stop_scan)
def scan_ports_and_update():
self.scan_ports()
self.update_table()
self.start_scan_event()
if self.thread.daemon == True:
self.radiobutton_frame_button.configure(text="Cканировать", image=image_scan_button, fg_color='#217346',
state="normal", command=self.change_button_state)
self.progressbar_1.set(100)
self.thread = threading.Thread(target=scan_ports_and_update)
self.thread.daemon = True
self.thread.start()