Comment créer une entrée pygtk avec un espace réservé comme dans l'élément d'entrée HTML 5?Pygtk entry placeholder
2
A
Répondre
8
Essayez ce code s'il fait ce que vous avez besoin:
import gtk
class PlaceholderEntry(gtk.Entry):
placeholder = 'Username'
_default = True
def __init__(self, *args, **kwds):
gtk.Entry.__init__(self, *args, **kwds)
self.connect('focus-in-event', self._focus_in_event)
self.connect('focus-out-event', self._focus_out_event)
def _focus_in_event(self, widget, event):
if self._default:
self.set_text('')
self.modify_text(gtk.STATE_NORMAL, gtk.gdk.color_parse('black'))
def _focus_out_event(self, widget, event):
if gtk.Entry.get_text(self) == '':
self.set_text(self.placeholder)
self.modify_text(gtk.STATE_NORMAL, gtk.gdk.color_parse('gray'))
self._default = True
else:
self._default = False
def get_text(self):
if self._default:
return ''
return gtk.Entry.get_text(self)
if __name__ == '__main__':
w = gtk.Window()
vbox = gtk.VBox()
w.add(vbox)
vbox.pack_start(PlaceholderEntry())
quitbtn = gtk.Button(stock=gtk.STOCK_QUIT)
quitbtn.connect('clicked', gtk.main_quit)
vbox.pack_start(quitbtn)
w.connect('destroy', gtk.main_quit)
w.show_all()
gtk.main()
4
Depuis la version 3.2, GTK + prend en charge l'espace réservé GtkEntry, mais la seule façon de profiter avec Python est à l'aide PyGobject au lieu de PyGtk.
Cordialement
0
Vous pouvez utiliser pygobject au lieu de pygtk, puis définir un espace réservé est un morceau de gâteau: entry.set_placeholder_text (« ficelle »)
Questions connexes
- 1. Formulaire ASP.net Double Entry
- 2. (Google AppEngine) Memcache Lock Entry
- 3. wordpress: previous_post_link()/next_post_link() placeholder
- 4. Html Textarea Placeholder
- 5. Placeholder l'intérieur d'un UpdatePanel
- 6. Comment ajouter un surnom dans Contact Entry?
- 7. JQuery Draggable et Sortable placeholder
- 8. Extension Helper Voir Zend Placeholder
- 9. Comment maintenir ViewState de PlaceHolder dans asp.net
- 10. ce numéro de ligne placeholder formule excel
- 11. Contenu Placeholder Javascript Objet attendu Erreur
- 12. PlaceHolder d'accès à partir d'une méthode
- 13. accéder à HtmlTable dans un placeHolder
- 14. UserControl, PlaceHolder et UpdatePanel sur PostBack
- 15. Comment lire le contenu littéral d'un PlaceHolder?
- 16. Implémentation de placeholder = "" pour l'opéra via jquery
- 17. PyGTK et visual-python
- 18. Erreur d'installation PyGtk
- 19. pygtk importation gtk erreur
- 20. Wildcard pour PyGTK États
- 21. Pygtk notes liens
- 22. Bouton pyGTK personnalisé
- 23. pyGTK Radio Button Aide
- 24. Socket Thread et PyGTK
- 25. rectangle arrondi dans pygtk
- 26. Learning Glade avec PyGTK
- 27. Opacité du widget PyGTK
- 28. pygtk: découvrez l'élément ciblé
- 29. Événement Visibility_notify dans pyGTK
- 30. Créer un widget Tkinter Entry en lecture seule mais sélectionnable
Salut eagleoneraptor, bienvenue à stackoverflow, merci pour l'alternative. –