IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GTK+ avec C & C++ Discussion :

problem avec gtk_entry_set_text()


Sujet :

GTK+ avec C & C++

  1. #1
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 7
    Par défaut problem avec gtk_entry_set_text()
    Bonjour tout le monde,
    Je suis un étudiant (Génie Informatique), et j'ai décidé d'apprendre GTK+,
    j'ai commencé de programmer une petite calculatrice, mais le problème est:
    quand je voudrais écrire les numéros dans "entry", je peux écrire seulement un seul numéro,
    la fonction callback du button 1
    void saisie1(GtkWidget *button[1],gpointer data)
    {
    const gchar *text;


    text=gtk_entry_get_text(GTK_ENTRY((GtkWidget*)data));
    gtk_entry_set_text(GTK_ENTRY((GtkWidget*)data),text);
    gtk_entry_set_text(GTK_ENTRY((GtkWidget*)data),"1");

    }
    pouvez-vous m'aider a écrire un fonctions qui permet d'écrire les numéro l'un après l'autre (exemple: quand je clic sur 1 puis sur 2 le programme affiche 2 a coté de 1)
    1ment , pardon , je sais j'ai beaucoup des fautes de francais.
    2ment, Merci beaucoup en avance .

  2. #2
    Modérateur

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Par défaut
    Bonjour,
    Ton soucis vient du fait que tu écris juste "1" dans le champ. gtk_entry_set_text remplace tout le contenu par ce que tu lui indiques. Là dans ton code:
    1. tu récupères le contenu de l'entry
    2. tu remplaces le contenu par une chaîne identique
    3. tu écrases à nouveau le contenu en écrivant 1


    Ce que tu veux faire, c'est
    1. récupérer le contenu de l'entry
    2. créer une nouvelle chaîne identique à la chaîne récupérée, mais avec "1" en plus à la fin
    3. écraser le contenu de l'entry par cette nouvelle chaine


    Pour l'étape 2, regarde du côté de g_strdup_printf ou g_strconcat, et n'oublie pas de libérer la chaîne avec g_free après l'étape 3.

  3. #3
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 7
    Par défaut
    un grand merci pour vous, c'est la bonne solution pour mon problème, Merci beaucoup ^_^

Discussions similaires

  1. Probleme avec la copie des surfaces
    Par Black_Daimond dans le forum DirectX
    Réponses: 3
    Dernier message: 09/01/2003, 10h33
  2. Problèmes avec le filtrage des ip
    Par berry dans le forum Réseau
    Réponses: 9
    Dernier message: 30/12/2002, 07h51
  3. probleme avec la touche F10
    Par b.grellee dans le forum Langage
    Réponses: 2
    Dernier message: 15/09/2002, 22h04
  4. Probleme avec fseek
    Par Bjorn dans le forum C
    Réponses: 5
    Dernier message: 04/08/2002, 07h17
  5. [Kylix] probleme avec un imagelist
    Par NicoLinux dans le forum EDI
    Réponses: 4
    Dernier message: 08/06/2002, 23h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo