2012-12-14 5 views
1

J'ai un petit script en python qui crée une fenêtre Windows en utilisant tkinter. Du texte à remplir et après, deux boutons: Ignorer/OK.Bouton Python - Tkinter présélectionné

Je voudrais autoriser l'utilisateur à appuyer sur 'Enter' pour appuyer sur le bouton OK. Je veux dire que je voudrais que le bouton OK soit présélectionné (en surbrillance) afin que vous puissiez utiliser entrer sans avoir à cliquer dessus.

J'espère que je suis assez clair. Thx!

Répondre

2

Utilisez button.focus() pour "pré-sélectionner" le bouton:

import Tkinter as tk 

class App(object): 
    def __init__(self, master): 
     dismiss = tk.Button(master, text = 'dismiss', command = self.on_dismiss) 
     ok = tk.Button(master, text = 'ok', command = self.on_ok) 
     ok.bind('<Return>', self.on_ok) 
     dismiss.bind('<Escape>', self.on_dismiss) 
     ok.focus() 
     dismiss.pack(fill = tk.BOTH) 
     ok.pack(fill = tk.BOTH) 
    def on_ok(self, event = None): 
     print("Aww, it's okay!") 
    def on_dismiss(self, event = None): 
     print("Dismissed!") 
root = tk.Tk() 
app = App(root) 
root.mainloop() 

Ou, si vous voulez la Entrez pour appeler self.on_ok globalement, changer ok.bind à master.bind.