2017-02-19 3 views
0

Même si la barre de défilement apparaît et qu'elle est mobile, elle ne fait pas défiler le texte dans la fenêtre. Je suis nouveau à tkinter et je n'arrive pas à trouver le problème.tkinter: la barre de défilement apparaît mais ne fonctionne pas

C'est ce que j'ai essayé:

def opensave(): 
    global openname 
    if saveordelete == 1: 
     openname = savedname.get() + ".txt" 
     my_file = Path(openname) 
     if my_file.is_file(): 
      file = open(openname, "r") 
      readopenname = file.read() 
      file.close() 
      root = Tk() 
      root.title("Saved file") 
      root.iconbitmap("morseicon.ico") 
      root.resizable(0,0) 
      root.geometry("520x610") 
      scrollbar = Scrollbar(root) 
      scrollbar.pack(side = RIGHT, fill=Y) 
      T = Listbox(root, yscrollcommand = scrollbar.set) 
      scrollbar.config(command = T.yview)      
      T = Text(root, height=500, width=500) 
      T.pack() 
      T.insert(END, readopenname) 
      root.mainloop() 
+0

Voulez-vous pour contrôler le widget 'Text' ou le widget' Listbox' ? Vous l'avez assigné à 'Listbox' mais le texte de votre question semble impliquer le widget' Text'. –

+0

Même lorsque je l'affecte au texte, il ne fait pas défiler le texte lorsque je l'utilise. – Lojas

+0

corrige un peu la grammaire et améliore la lisibilité – ezdazuzena

Répondre

1

Alors finalement j'ai réussi à résoudre le problème:

def opensave(): 
     global openname 
     if saveordelete == 1: 
      openname = savedname.get() + ".txt" 
      my_file = Path(openname) 
      if my_file.is_file(): 
       file = open(openname, "r") 
       readopenname = file.read() 
       file.close() 
       root = Tk() 
       root.title("Saved file") 
       root.iconbitmap("morseicon.ico") 
       root.geometry("520x610") 
       root.resizable(0,0) 
       scrollbar = Scrollbar(root) 
       scrollbar.pack(side = RIGHT, fill=Y) 
       mytxt = Text(root, yscrollcommand = scrollbar.set) 
       mytxt.insert(END, readopenname) 
       mytxt.pack(side = LEFT, fill = BOTH) 
       scrollbar.config(command = mytxt.yview) 
       mainloop()