Wie setze ich die Standardschaltfläche in PyGTK?

Ich habe ein sehr einfaches Fenster, in dem ich 2 Schaltflächen habe - eine zum Abbrechen, eine zum Anwenden. Wie kann ich die Schaltfläche als Standard festlegen? (Wenn ich die Eingabetaste drücke, wird die Schaltfläche "Übernehmen" gedrückt.)

Ich möchte jedoch den Fokus auf das erste Eingabe-Widget setzen (ich kann grab_focus () nicht für die Schaltfläche verwenden)

Irgendwelche Vorschläge?

Bearbeiten: Nach demwuubantworte es funktioniert optisch gut. Wenn ich jedoch die Schaltfläche in einem anderen Widget drücke, wird der Rückruf der Standardschaltfläche nicht ausgeführt.

Beispielcode:

import os, sys, pygtk, gtk 

def run(button, window):
    dialog = gtk.MessageDialog(window, gtk.DIALOG_MODAL, gtk.MESSAGE_INFO, gtk.BUTTONS_OK, "OK")
    dialog.run()
    dialog.destroy()

window = gtk.Window()
window.connect("destroy", gtk.main_quit)

vbox = gtk.VBox(spacing = 10)
entry = gtk.Entry()
vbox.pack_start(entry)

button = gtk.Button(stock = gtk.STOCK_SAVE)
button.connect("clicked", run, window)
button.set_flags(gtk.CAN_DEFAULT)
window.set_default(button)
vbox.pack_start(button)

window.add(vbox)
window.show_all()
gtk.main()

EDIT2: Jede Eingabe, die das Standard-Widget aktivieren kann, muss ausgeführt werden

widget.set_activates_default(True)

Antworten auf die Frage(1)

Ihre Antwort auf die Frage