Как создать кнопку остановки Tkinter GUI, чтобы сломать функцию, выполнение которой занимает часы? - PullRequest
0 голосов
/ 16 мая 2019

Как я могу создать кнопку остановки Tkinter GUI, чтобы прервать функцию, которая требует много времени для выполнения.Я хотел бы иметь возможность просто нажать кнопку остановки, а затем она прерывает основную функцию и очищает все GPIO.Было бы здорово, если бы я мог сделать это, используя tk.after () вместо использования потоков.Спасибо!

from Tkinter import *

def main_function():
    #a function that open and closes GPIOs on a RPi, and takes hours to be
#fully executed.

root = Tk()
root.title("Title")
root.geometry("500x500")

app = Frame(root)
app.grid()

start = Button(app, text="Start Scan",command=scanning)
stop = Button(app, text="Stop",command="break")

start.grid()
stop.grid()

Как только я нажму на начало, мне нужно дождаться окончания основной функции, чтобы можно было нажать кнопку остановки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...