Heim  >  Fragen und Antworten  >  Hauptteil

Warum kann die Schaltfläche auf tkinter, der rote Teil im Bild, nicht angeklickt werden, nachdem in Python2.7 auf die Schaltfläche „Start“ geklickt wurde?

Warum kann nach dem Klicken auf die Schaltfläche „Start“ in Python2.7 die Schaltfläche auf tkinter, der rote Teil im Bild, nicht mehr angeklickt werden? Wie kann ich auf die Schaltflächen „Minimieren“, „Maximieren“ und „Schließen“ von tkinter klicken, nachdem ich auf die Schaltfläche „Start“ geklickt habe?
Der Code lautet:

# -*- coding: UTF-8 -*-

from Tkinter import *
import os
import tkMessageBox
import time
root = Tk()
today_path = time.strftime('%Y-%m-%d')
work_path = 'C:\yes_pic\' + today_path
def start():
    while True:
        doThis(work_path)
        time.sleep(5)

def doThis(dirr):
    if not os.path.exists(dirr):
        pass
    else:
        if os.path.isdir(dirr):
            for p in os.listdir(dirr):
                d  = os.path.join(dirr,p)
                if (os.path.isdir(d) == True):
                    doThis(d)
        if  os.listdir(dirr):
            if dirr.count('\')!=2:
                tkMessageBox.showwarning("提示", "路径"+dirr+"有文件!")


button = Button(root, text="开始", command=start,width=20,height=10)
button.pack()
root.geometry('300x200+500+300')
root.mainloop()

漂亮男人漂亮男人2702 Tage vor792

Antworte allen(1)Ich werde antworten

  • 大家讲道理

    大家讲道理2017-05-27 17:41:55

    因为你在start里面写的是死循环,永远不会结束
    你应该新启一个子线程才对

    Antwort
    0
  • StornierenAntwort