Je crée un programme en utilisant Python et Gtk. Je veux guider l'utilisateur en signalant les erreurs éventuelles. J'ai joint un exemple d'interface Glade ci-dessous. Ici, l'utilisateur est supposé entrer un nom de station valide dans le champ GtkEntry. Je souhaite mettre ce champ en surbrillance en rouge (par exemple) s’il appuie sur le bouton Soumettre.
Comment y parvenir en GTK3 avec Python?
Premièrement, vous aurez besoin de la classe Color
de Gdk
et de la classe Gtk
:
from gi.repository import Gtk
from gi.repository.Gdk import Color
Ensuite, dans votre gestionnaire, changez la couleur de premier plan du champ de texte:
COLOR_INVALID = Color(50000, 0, 0) // A dark red color
text_field.modify_fg(Gtk.StateFlags.NORMAL, COLOR_INVALID)
Si vous souhaitez rétablir la couleur par défaut lorsque le champ de texte est modifié, placez-le dans le gestionnaire de modification:
text_field.modify_fg(Gtk.StateFlags.NORMAL, None)
Les valeurs RBG pour la classe Color
sont comprises entre 0 et 65535.
Pour plus d'informations, voir les classes documentation PyGTK , en particulier les classes Widget et Color .