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

C Discussion :

Problèmes de création d'une boite de dialogue avec gnome_message_box_new


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2003
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 13
    Par défaut Problèmes de création d'une boite de dialogue avec gnome_message_box_new
    Bonjour,

    J'ai déniché un tutoriel pour la programmation Gnome avec Glade sur
    http://eddy.writelinux.com/fr/part2/

    La création de l'interface avec Glade ne pose pas de problèmes.

    Après, je modifie pas-à-pas avec un éditeur de texte le fichier
    callbacks.c . Tout va bien jusque la ligne suivante :

    msgBox = gnome_message_box_new
    (message,GNOME_MESSAGE_BOX_INFO,GNOME_STOCK_BUTTON_OK,NULL);

    Quand je fais un make, il me dit :

    callbacks.c: In function ‘on_FConvertir_Bouton_clicked’:
    callbacks.c:65: error: ‘GNOME_MESSAGE_BOX_INFO’ undeclared (first use in
    this function)
    callbacks.c:65: error: (Each undeclared identifier is reported only once
    callbacks.c:65: error: for each function it appears in.)
    callbacks.c:65: error: ‘GNOME_STOCK_BUTTON_OK’ undeclared (first use in
    this function)
    callbacks.c:65: warning: assignment makes pointer from integer without a
    cast
    make: *** [callbacks.o] Erreur 1

    Le tutoriel ne parle pas de déclarer quoi que ce soit. Où est l'erreur?

    J'utilise Gnome 2 et Gtk 2.

    Si quelqu'un peut m'aider, ça me ferais plaisir.

    Merci d'avance.

  2. #2
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2003
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 13
    Par défaut
    Je pense qu'il va être plus simple de vous montrer tout le code du fichier callbacks.c :

    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
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    #ifdef HAVE_CONFIG_H
    #  include <config.h>
    #endif
     
    #include <gtk/gtk.h>
     
    #include "callbacks.h"
    #include "interface.h"
    #include "support.h"
     
     
     
    void
    on_Info_Bouton_clicked                 (GtkButton       *button,
                                            gpointer         user_data)
    {
     
    }
     
     
    void
    on_button1_clicked                     (GtkButton       *button,
                                            gpointer         user_data)
    {
     
    gtk_widget_show(create_aboutdialog1());
     
    }
     
     
    void
    on_Quitter_Bouton_clicked              (GtkButton       *button,
                                            gpointer         user_data)
    {
     
    gtk_main_quit();
     
    }
     
     
    void
    on_FConvertir_Bouton_clicked           (GtkButton       *button,
                                            gpointer         user_data)
    {
     
    // Notre boite de messagee
    GtkWidget *msgBox;
     
    // Valeur retournée par gnome_dialog_run_and_close
    gint returnVal;   
     
    // La vaeur retournée par g_strdup_printf devant etre passé à gnome_message_box_new
    gchar* message;
     
    // Résupération de la valeur Fahrenheit du widget de saisie de texte
    GtkWidget * fValue = lookup_widget(GTK_WIDGET(button), "F_saisie");
     
    // Conversion du texte récupéré en double
    gdouble fahrenheit = g_strtod(gtk_entry_get_text(GTK_ENTRY(fValue)),NULL);
     
    // Construction de la chaine finale qui sera passé à gnome_message_box_new
    message = g_strdup_printf("Le résultat est: %.2f degrés celsius.",( (5.0 / 9.0) * (fahrenheit - 32 ) )) ;
     
    // Création de notre boite de message
    msgBox = gnome_message_box_new (message,GNOME_MESSAGE_BOX_INFO,GNOME_STOCK_BUTTON_OK,NULL);
     
    // Affichage de la boite de message
    returnVal = gnome_dialog_run_and_close (GNOME_DIALOG (msgBox));
     
    // Libération de la mémoire alloué par g_strdup_printf
    g_free (message);
     
    }
     
     
    void
    on_CConvertir_Bouton_clicked           (GtkButton       *button,
                                            gpointer         user_data)
    {
     
     
    }
     
     
    void
    on_window_destroy                      (GtkObject       *object,
                                            gpointer         user_data)
    {
     
    gtk_main_quit();
     
    }

  3. #3
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut


    A utiliser GTK, autant utiliser GTK jusqu'au bout.

    http://developer.gnome.org/doc/API/2...ageDialog.html

  4. #4
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Une chose de paraît bizarre ... tu veux utiliser des fonctions et constantes de GNOME mais je ne vois pas dans ton code de choses du style:
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  5. #5
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2003
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 13
    Par défaut
    Bonjour,

    Effectivement, le tuto n'en parle pas. Je débute et je tatonne.

    Quand j'ajoute le #include <gnome.h>, il me dit que le fichier n'existe pas.

    Je suis sur Ubuntu 6.10 64 bit, et j'ai déjà rencontrer des petits problèmes. Genre Codeblocks qui ne fonctionne pas ou Anjuta qui débloque.

    Le gnome.h est contenu dans quel paquet?

    Merci d'avance.

  6. #6
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Citation Envoyé par Korak
    Bonjour,

    Effectivement, le tuto n'en parle pas. Je débute et je tatonne.

    Quand j'ajoute le #include <gnome.h>, il me dit que le fichier n'existe pas.

    Je suis sur Ubuntu 6.10 64 bit, et j'ai déjà rencontrer des petits problèmes. Genre Codeblocks qui ne fonctionne pas ou Anjuta qui débloque.

    Le gnome.h est contenu dans quel paquet?

    Merci d'avance.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo apt-get install libgnome2-dev
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

Discussions similaires

  1. Réponses: 5
    Dernier message: 28/07/2009, 21h38
  2. Création d'une boite de dialogue
    Par sako31 dans le forum MATLAB
    Réponses: 7
    Dernier message: 07/11/2007, 15h35
  3. Réponses: 5
    Dernier message: 22/06/2007, 14h55
  4. Réponses: 1
    Dernier message: 06/01/2007, 15h22
  5. Création d'une boite de dialogue type MessageBox
    Par kurkaine dans le forum C++Builder
    Réponses: 8
    Dernier message: 25/10/2006, 11h45

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