2009-07-11 37 views
5

2 düğüme sahip olduğum çok basit bir pencerem var - biri iptal için, diğeri başvuru için. Düğme nasıl ayarlanır?PyGTK'de varsayılan düğme nasıl ayarlanır?

Ancak, ilk giriş widget'ı odağı ayarlamak istediğiniz (I enter tuşuna basın zaman, "uygulamak" butonuna basıldığında)

Herhangi öneri (I düğmesine grab_focus() kullanamazsınız)?

Düzenleme: wuubsonra 'ın görsel iyi çalışıyor cevap. Ancak, farklı pencere öğesi düğmesine bastığımda, varsayılan düğmenin geri çağrılmasını çalıştırmaz.

örnek kod:

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: Varsayılan widget'ı etkinleştirebilirsiniz Her giriş koştu edilmelidir

widget.set_activates_default(True) 

cevap

İlgili konular