Мои окна приложений tkinter не закрываются должным образом.Я использую python 3.6.6 с tkinter 8.6
Мой код делает в основном это:
Откройте процесс, где:
- Тестовая функция вызывается черезПоток, который закрывает окно Gui после 3s
- Окно Gui создано
- Ожидание завершения потока (присоединение) и окно предположения было закрыто
Я пытался использовать:
- quit -> окно закрывается только когда я наводю на него указатель мыши
- destroy -> destroy не возвращает
Я опустил его доследующий код, пожалуйста, скопируйте и выполните и / или скажите мне, что не так ...
from time import sleep, time
import threading
from multiprocessing import Process, set_start_method
from tkinter import *
CtrlApplObj = None
def Start():
global CtrlApplObj
CtrlApplObj = None
CtrlApplObj = ControlApplication()
CtrlApplObj.run()
def End():
print("Quit now...")
#CtrlApplObj.root.destroy()
CtrlApplObj.root.quit()
class ControlApplication():
def __init__(self):
pass
def run(self):
self.root=Tk()
print("Mainloop...")
self.root.mainloop()
def test():
sleep(3)
End()
def execute():
T1 = threading.Thread(target=test)
T1.start()
Start()
T1.join()
if __name__ == "__main__":
set_start_method("spawn")
for i in range(2):
TestProcess = Process(target=execute)
TestProcess.start()
TestProcess.join()