Bonsoir
Je voudrais lancer une fonction à la sortie d'un widget GtK.Entry (du style quand elle perd le focus)
Mais je ne rien vu dans la doc.
Quelqu'un aurait il une idée ?
Merci
Bonsoir
Je voudrais lancer une fonction à la sortie d'un widget GtK.Entry (du style quand elle perd le focus)
Mais je ne rien vu dans la doc.
Quelqu'un aurait il une idée ?
Merci
Bonjour.
Les GtkEntry héritent des GtkWidget. Tous les signaux s'y afférent sont donc utilisables.
Je pense que le signal “focus-out-event” devrait répondre à tes attentes.
Extrait de la documentation :
The “focus-out-event” signal
gboolean
user_function (GtkWidget *widget,
GdkEvent *event,
gpointer user_data)
The ::focus-out-event signal will be emitted when the keyboard focus leaves the widget 's window.
To receive this signal, the GdkWindow associated to the widget needs to enable the GDK_FOCUS_CHANGE_MASK mask.
J'avais vu cette option. Mais je n'ai pas su l'utiliser. Je vais reprendre la doc. Merci
OK finalement ça passe, par contre, je comprends pas les paramètres passés à la fonction
ça passe bien si je passe 3 arguments à la fonction. Par contre, si je n'en mets que 2 self et widget, ça ne passe pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 name_box = Gtk.Entry() name_box.connect("activate", self.cb_activate) name_box.connect("focus-out-event", self.test) def test(self, widget, aze): print("OK")
Je ne comprends pas à quoi correspond ce troisième argument
Si quelqu'un pouvait m'éclairer, ce serait cool
Il faut bien entendu respecter les prototypes. S’il faut trois arguments alors on doit en déclarer trois.
Pour répondre plus précisément à ta question le troisième argument est un argument personnel que tu peux transmettre lors de la connexion du signal à ce callback.
Je ne fais pas de python mais en C la fonction connect (); prends en dernier paramètre la fameuse donnée personnelle.
OK merci bien pour l'aide et les conseils
je passe en résolu. ça marche nickel
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager