尽管看到很多关于这个话题的问题,但我找不到合适的答案来解决我的困惑。我是 Python 的初学者,它是我的第一语言。我正在尝试创建一个对话框,在打开该框时自动运行测试。测试完成后,我希望打开另一个对话框,说明测试已完成。测试功能正常且运行正常。但是,由于辅助对话框正在调用 的第二个实例Tk(),因此它不会打开。
我的问题:如何更改我的代码以允许在我的测试完成时打开辅助对话框?
obj_rcs是正在运行的测试。
obj_config是辅助对话框。
我的代码:
enter code here
from configcomplete_slice import complete
from slice_setup import SLICE_SETUP
import Tkinter
import threading
import Queue
class GuiPart:
    def __init__(self, master, queue):
        self.queue = queue
        master.geometry("300x100+400+250")
        master.title("RSAM BCT")
        Tkinter.Label(master, text= "REDCOM SLICE", fg="red").pack()
        Tkinter.Label(master, text= "BCT - Basic Configuration Test",    
        fg= "red").pack()
        Tkinter.Label(master, text= "Please wait...", fg= "black").pack()
        Tkinter.Label(master, text= "Estimated time: 3 min 6 sec", 
        fg= "black").pack()
    def processIncoming(self):
        while self.queue.qsize():
            try:
                msg = self.queue.get(0)
                print msg
            except Queue.Empty:
                pass
class ThreadedClient:
    def __init__(self, master):
        self.master = master
        # Create the queue
        self.queue = Queue.Queue()
        # Set up the GUI part
        self.gui = GuiPart(master, self.queue)
        # Set up the thread to do asynchronous I/O
        self.running = 1
        self.thread1 = threading.Thread(target = self.workerThread1)
        self.thread1.start()
        self.periodicCall()
    def periodicCall(self):
        self.gui.processIncoming()
        if not self.running:
            import sys
            sys.exit(1)
        self.master.after(100, self.periodicCall)
    def workerThread1(self):
        while self.running:
            obj_rcs = SLICE_SETUP()
            obj_com = complete()
            obj_rcs.SLICE()
            obj_com.config()
root = Tkinter.Tk()
client = ThreadedClient(root)
root.mainloop()
class complete:
    def config(self):
        Tkinter.geometry("400x300+400+250")
        Tkinter.title("RSAM BCT")
        Tkinter.Label(master, text= "REDCOME SLICE", fg="red").pack()
        Tkinter.Label(master, text= "BCT - Basic Configuration Test", fg= "red").pack()
        Tkinter.Label(master, text= "Configuration Complete!", fg= "dark green").pack()
        Tkinter.Label(master, text= "Trunk 1: Port 1: Phone 1: 760-450-4500", 
        fg= "black").pack()
        Tkinter.Label(master, text= "Trunk 1: Port 2: Phone 2: 760-450-4501", 
        fg= "black").pack()
        Tkinter.Button(master, text = "    Exit    ", 
        command = Tkinter.destroy).pack()