У меня очень простое окно, где у меня есть 2 кнопки - один для отмены, один для применения. Как установить кнопку для применения по умолчанию? (Когда я нажимаю войти, «применить» кнопка нажата)Как установить кнопку по умолчанию в PyGTK?
Однако, я хочу, чтобы установить фокус на первый входной виджет (я не могу использовать grab_focus() на кнопке)
Есть предложения?
Edit: После wuub «s ответ он работает визуально хорошо. Однако, когда я нажимаю кнопку в разных виджетах, она не выполняет обратный вызов кнопки по умолчанию.
Пример кода:
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: Каждый вход, который может активировать виджет по умолчанию должен быть побежал
widget.set_activates_default(True)