-
[GTK+] Signal sur Entry
Bonjour!
J'étais un grand utilisateur de visual 2005 et il y a une fonction que j'appréciais particulièrement qui me permettait de créer un event dès qu'on rentrait un caractère dans un entry, en vérifiant la taille des données entrées, cela me permettait d'Autovalider un entry dès qu'il arrivait à 10 caractères par exemple.
Je me demandais si la même chose existait en GTK?
Ce que j'aimerais c'est que dès que je rentre le 10ème caractère, la chaine de mon entry se vide et soit placé dans un label.
Il existe la solution de limiter à 10 caractères et de mettre un bouton pour copier l'entrée vers le label, mais bon, l'automatiser serait quand même plus sympa...
Alors il y a un signal_connect ??
Merci!
-
Bonjour,
Le signal n'est pas évident à trouver car il provient de l'interface GtkEditable : changed ;)
-
C'est exactement ce que je voulais !
Merci beaucoup,
Avec un
Code:
G_CONST_RETURN gchar* gtk_entry_get_text(GtkEntry *entry);
Je devrais arriver à récupérer la taille du texte (strlen) et à faire ce que je veux
Encore merci :ccool:
-
avec strlen, je pense pas ;) regarde plutôt du côté de g_utf8_strlen.
-
strlen marche très bien dans mon cas, pourquoi me conseilles tu une autre fonction?
Merci
Edit: Perso je n'ai jamais de caractères accentués ou "space" dans mes chaînes (je lis un code à barre)
-
Tu as répondu à ta question dans ton edit :) Si tu veux compter le nb de caractères, ça reste plus sûr d'utiliser g_utf8_strlen car tu ne sais pas comment ce code va évoluer ou où il va être copié dans quelques années, donc ça peut légèrement améliorer la maintenabilité de ton programme. Mais si tu as réfléchi au problème, ça ne pose effectivement pas de pb de rester avec strlen (par contre je mettrais un commentaire).
-
Ok j'avais vu juste du coup ;)
merci du conseil :ccool: