2016-11-23 4 views
-1

Lorsque le widget d'entrée est chargé à l'intérieur de la fenêtre de test, la nouvelle fenêtre se charge mais le widget se charge dans la première fenêtre. Toute idée de ce que je pourrais changer ici.Python - Tkinter Entrée montrant sur la mauvaise fenêtre

import tkinter as tk 

class programLauncher(tk.Frame): 
    def __init__(self, *args, **kwargs): 
     tk.Frame.__init__(self, *args, **kwargs) 
     self.TESTING_btn = tk.Button(self, text = "TESTING", command = self.varTesting) 
     self.TESTING_btn.pack(side = "right", expand=True) 

    def varTesting(self): 
     t = tk.Toplevel(self) 
     t.wm_title("TESTING - Variables") 
     warning = tk.Label(t, text = "WARNING TESTING ONLY") 
     warning.grid(row = 0, column = 0) 
     sysCap = tk.Label(t, text = "System Cap") 
     sysCap.grid(row = 1, column = 0) 
     sysCapInp = tk.Entry(bd = 5) 
     sysCapInp.pack() 


if __name__ == "__main__": 
    root = tk.Tk() 
    main = programLauncher(root) 
    main.pack(side="top", fill="both", expand=True) 
    root.mainloop() 

Répondre

0

Vous avez pas donné un parent au widget Entry, il est ajouté à la fenêtre racine.

0
sysCapInp = tk.Entry(Parent, bd = 5) 
    sysCapInp.pack() 

je nommerais aussi comme self.sysCapInp de sorte que vous pouvez appeler sysCapInp .get() d'ailleurs si nécessaire au lieu de l'intérieur de votre une fonction

+0

L'exécution de cette donne une erreur de syntaxe en raison de la « < » . –