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 :

GTK+ erreur d'execution fonction saisie de donnees


Sujet :

GTK+ avec C & C++

  1. #1
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 126
    Par défaut GTK+ erreur d'execution fonction saisie de donnees
    Bonjour tout le monde!!!

    J'utilise le toolkit GTK+ et je code en C , je suis capable d'afficher correctement des fenetres et de leur mettre un titre. Cependant qd je veux creer un espace de saisie libre pour l'utilisateur, mon code compile mais lors de l'execution j'ai cette erreur (somme toute bizarre car ma ligne 75 ne comporte rien en lien avec du GTK+)

    **Error**:file shape.c:line 75(pango_shape):assertion failedglyphs->num-glyphs>0) aborting...

    Je me dis que c'est peut etre un pb de pointeur...

    Si quelqu'un a la moindre idee je suis preneuse !!!

  2. #2
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 126
    Par défaut
    je me demandais egalement si je pouvais tester certaines fonctions ou variables pour verifier leur fonctionnement ? Merci

  3. #3
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Par défaut
    Bonjour,

    Citation Envoyé par Emyleet
    j'ai cette erreur (somme toute bizarre car ma ligne 75 ne comporte rien en lien avec du GTK+)

    **Error**:file shape.c:line 75(pango_shape):assertion failedglyphs->num-glyphs>0) aborting...
    L'assertion affiche le nom et la ligne ou se produit le problème (apparement le fichier shape.c de la bibliothèque pango).
    Citation Envoyé par Emyleet
    je me demandais egalement si je pouvais tester certaines fonctions ou variables pour verifier leur fonctionnement ? Merci
    C'est à dire ? En cas d'erreur, tu peux vérifier le contenu de tes variables pour savoir si elles sont valides (pointeur non NULL...).

    Apparement tu créée juste une fenêtre avec un GtkEntry dedans ? Si le code est petit poste le ici, ça sera plus simple pour d'aider

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 126
    Par défaut
    je suis en train de reinstaller le package pango ca vient peut etre de ca..

    Mon code est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
     
    #include <stdlib.h>
    #include <gtk/gtk.h>
     
    struct _MainWindow
    {
        GtkWidget *pWindow;
        GtkWidget *pVBox;
        GtkWidget *pEntry;
        GtkWidget *pButton;
        GtkWidget *pLabel;
    };
     
    typedef struct _MainWindow MainWindow;
     
    void OnUpdate(GtkWidget *pEntry, gpointer data);
     
    void fenetre_saisie()
    {
        MainWindow *pApp;
     
        pApp = g_malloc(sizeof(MainWindow));
     
        pApp->pWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
        gtk_window_set_title(GTK_WINDOW(pApp->pWindow), "Le widget GtkEntry");
        gtk_window_set_default_size(GTK_WINDOW(pApp->pWindow), 320, 200);
        g_signal_connect(G_OBJECT(pApp->pWindow), "destroy", G_CALLBACK(gtk_main_quit), NULL);
     
        pApp->pVBox = gtk_vbox_new(TRUE, 0);
        gtk_container_add(GTK_CONTAINER(pApp->pWindow), pApp->pVBox);
     
        /* Creation du GtkEntry */
        pApp->pEntry = gtk_entry_new();
        /* Insertion du GtkEntry dans la GtkVBox */
        gtk_box_pack_start(GTK_BOX(pApp->pVBox), pApp->pEntry, TRUE, FALSE, 0);
     
        pApp->pButton = gtk_button_new_with_label("Copier");
        gtk_box_pack_start(GTK_BOX(pApp->pVBox), pApp->pButton, TRUE, FALSE, 0);
     
        pApp->pLabel = gtk_label_new(NULL);
        gtk_box_pack_start(GTK_BOX(pApp->pVBox), pApp->pLabel, TRUE, FALSE, 0);
     
        /* Connexion du signal "activate" du GtkEntry */
        g_signal_connect(G_OBJECT(pApp->pEntry), "activate", G_CALLBACK(OnUpdate), (gpointer) pApp);
     
        /* Connexion du signal "clicked" du GtkButton */
        /* La donnee supplementaire est la GtkVBox pVBox */
        g_signal_connect(G_OBJECT(pApp->pButton), "clicked", G_CALLBACK(OnUpdate), (gpointer*) pApp);
     
        gtk_widget_show_all(pApp->pWindow);
     
        gtk_main();
     
        g_free(pApp);
     
    }
     
    /* Fonction callback execute lors du signal "activate" */
    void OnUpdate(GtkWidget *pEntry, gpointer data)
    {
        const gchar *sText;
        MainWindow *pApp;
     
        /* Recuperation de data */
        pApp = (MainWindow*) data;
     
        /* Recuperation du texte contenu dans le GtkEntry */
        sText = gtk_entry_get_text(GTK_ENTRY(pApp->pEntry));
     
        /* Modification du texte contenu dans le GtkLabel */
        gtk_label_set_text(GTK_LABEL(pApp->pLabel), sText);
    }

    je fais en fait l'initialisation de gtk dans mon main, et j'appel mon fonction fenetre_saisie dans une autre fonction.
    merci

  5. #5
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Par défaut
    Citation Envoyé par Emyleet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        /* Connexion du signal "clicked" du GtkButton */
        /* La donnee supplementaire est la GtkVBox pVBox */
        g_signal_connect(G_OBJECT(pApp->pButton), "clicked", G_CALLBACK(OnUpdate), (gpointer*) pApp);
    Le cast de pApp n'est pas bon (gpointer à la place de gpointer *).

    A part ça je ne vois pas d'erreur, mais je n'ai pas de quoi tester sous la main

  6. #6
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 126
    Par défaut
    oui oui pardon ca je l'ai corrige sur mon code

    et pour info ca a rien change de reinstaller le package pango

  7. #7
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 126
    Par défaut
    j'ai fait le test suivant pour voir l'initialisation d'un label:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    // Creation du label 
        pLabel=gtk_label_new("Hello World!");
        if (!(pLabel=gtk_label_new("Hello World!")))
        {
        fprintf(stderr, "Erreur d'initialisation de la SDL : %s\n", SDL_GetError()); // Ecriture de l'erreur
        exit(EXIT_FAILURE); // On quitte le programme
    et j'ai obtenu l'erreur suivante:

    ** (Project1gtkottawa3.exe:2752): WARNING **: No builtin or dynamically loaded modules
    were found. Pango will not work correctly. This probably means
    there was an error in the creation of:
    'H:\Divers\Dev-Cpp\leprojetquitu\etc\pango\pango.modules'
    You may be able to recreate this file by running pango-querymodules.

    (Project1gtkottawa3.exe:2752): GLib-GObject-CRITICAL **: file gobject.c: line 1561 (g_object_ref): assertion `G_IS_OBJECT (object)' failed

    ** (Project1gtkottawa3.exe:2752): CRITICAL **: file pango-engine.c: line 68 (_pango_engine_shape_shape): assertion `PANGO_IS_FONT (font)' failed


  8. #8
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Par défaut
    J'ai testé ton code, il marche très bien

    Il doit y avoir un problème à l'installation, tu as lu Installation de GTK+ sous Code::Blocks ?

  9. #9
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 126
    Par défaut
    je suis sous dev C++ mais je suppose que ca se ressemble , j'essaye !

  10. #10
    Membre très actif Avatar de stilobique
    Homme Profil pro
    Infographiste 3D
    Inscrit en
    Septembre 2005
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Infographiste 3D
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Septembre 2005
    Messages : 236
    Par défaut
    Désolé, sa fait un peut ressortir le topic mais bon.

    Ton erreur est du au fait que tu n'a pas du installer les "Runtimes"
    C'est mon cas et je ne peut pas encore tester mes programmes.
    Je te donne le lien pour télécharger le package manque si celui si marche

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur d'execution d'une fonction
    Par ghir_ana dans le forum Développement
    Réponses: 3
    Dernier message: 01/10/2012, 10h40
  2. erreur execution fonction
    Par KING_RICH dans le forum SQL
    Réponses: 10
    Dernier message: 20/01/2009, 11h50
  3. erreur d'execution 3075 sur une fonction
    Par maximus_yassine dans le forum VBA Access
    Réponses: 2
    Dernier message: 30/05/2008, 16h41
  4. erreur d'execution '13', contraindre les saisies de l'utilisateur
    Par vince6262 dans le forum Général VBA
    Réponses: 8
    Dernier message: 05/05/2008, 13h27
  5. [JSP][JAVASCRIPT] erreur d'execution de fonction
    Par zybay dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 23/05/2007, 17h19

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