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 :

Afficher une liste chainée dans un text_view


Sujet :

GTK+ avec C & C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 9
    Par défaut Afficher une liste chainée dans un text_view
    Bonsoir,

    Je me suis mis récemment au GTK+ et je rencontre quelques difficultés.
    En effet, la création de l'interface et l'implémentation du code se sont déroulés sans gros problèmes, mais je peine à afficher mes résultats dans ma zone de texte. Mes données sont contenues dans une liste chainée et je ne parviens qu'à les afficher dans la console.
    Quelqu'un pourrait-il me donner une méthode pour faire cet affichage dans la zone de texte?

    Merci d'avance pour votre aide.

    Gaara93

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par défaut
    Si c'est le parcours de la liste chaîné que tu n'arrives pas à faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    GList *it;
     
    for (it = ma_liste_chainee; it != NULL; it = it->next) {
           MesDonnes *donnees = (MesDonnees *)it->data;
     
           afficher_donnees_dans_zone_de_texte (zone_de_texte, donnees);
    }
    Si c'est l'affichage proprement dit que tu n'arrives pas à faire, il faudrait donner plus d'infos sur le widget que tu utilises et sur la façon dont tes données sont stockées dans ta liste chaînée.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 9
    Par défaut
    Le parcours de liste est déjà fait, enfin si celui si est le même que dans le code C... (mais d'après ce que tu m'as donné ça n'a pas l'air d'être le cas )

    Donc voici le widget que j'utilise:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    GtkWidget *ecran;
    ecran=gtk_text_view_new();
    gtk_text_view_set_wrap_mode (ecran, GTK_WRAP_CHAR);
    Et la structure contenant ma liste:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    typedef struct Cell // Structure d'une liste chaînée
    {
        int donnee; // donnée de type entier uniquement
        struct Cell *suivant;
        struct Cell *precedent;
     
    }Cell;
    Je souhaite te remercier aussi de t'arrêter sur mon problème qui n'est pas forcément des plus intéressant

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par défaut
    Pour ta liste chaînée, tu peux utiliser le type GList au lieu de refaire ta propre implémentation à la main Ce que tu n'arrives pas à faire, c'est insérer du texte dans ton GtkTextView ou bien c'est convertir ta donnée entière (de type int) en texte que tu peux afficher dans le GtkTextView ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 9
    Par défaut
    En fait tout le programme est basé sur mes listes de type Cell.
    Je pensais simplement recopier mon résultat dans une de type GList avant de l'afficher afin de ne pas avoir à modifier tout mon code (il me faudrait des jours dans ce cas )

    La conversion en caractère n'est pas un soucis, c'est réellement l'affichage en lui même le problème, je ne sais pas quelles fonctions utiliser et encore moins comment les utiliser.

    Merci de votre aide

  6. #6
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par défaut
    Je pense pas que tu aies besoin de tout convertir en GList tant que tu sais itérer sur ton type Cell.
    Tu peux utiliser http://library.gnome.org/devel/gtk/s...iew-get-buffer et http://library.gnome.org/devel/gtk/s...sert-at-cursor pour afficher un char * dans un GtkTextView

Discussions similaires

  1. Afficher une List<Object[]> dans une page JSP
    Par patricx dans le forum Spring Web
    Réponses: 8
    Dernier message: 24/05/2013, 13h51
  2. Réponses: 5
    Dernier message: 25/04/2006, 09h33
  3. enregistrer une liste chainée dans un fichier?
    Par ALF-Teams dans le forum C
    Réponses: 7
    Dernier message: 08/03/2006, 18h42
  4. Réponses: 2
    Dernier message: 10/10/2005, 02h25
  5. [Stratégie]Sauvegarde d'une liste chainée dans un fichier
    Par BernardT dans le forum Général Java
    Réponses: 17
    Dernier message: 25/07/2005, 17h04

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