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 :

La Fonction gtk_label_set_use_markup


Sujet :

GTK+ avec C & C++

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

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 236
    Points : 277
    Points
    277
    Par défaut La Fonction gtk_label_set_use_markup
    Bonjour.

    Bon d'abord sachez que je débute en programmation C.
    Sa fait plus d'un ans que je fait du PHP et malgrés les similitudes je suis quand même un peut perdu sur certain aspect
    Mais bon je diverge.

    Voila. J'ai réussi à faire marcher la librairie GTK+ sur mon PC pour Dev C++ (Code::Block ne fontionne pas a cause des runtimes qui ne doivent pas être les bons...) et j'ai donc commencé à suivre le cours sur gtk.developpez.com mais je suis déjà bloqué avec les label ou plutôt avec une des fonctions pour afficher le texte en gras.

    Bref en fait je comprend absolument pas comment on utilise cette fonction qui est la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    void gtk_label_set_use_markup(GtkLabel *label, gboolean setting);
    Dans le cours il est dit de remplacer setting par TRUE ce que j'ai fait mais c'est pas mieux

    Voila, merci d'aider un débutant telle que moi car j'aimerais tellement comprendre, cette librairie est vraiment trop bien
    Environment Artist | Technical Artist | Game Art
    Porfolio Art Station

  2. #2
    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 : 40
    Localisation : France

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

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

    Citation Envoyé par killpatate
    Dans le cours il est dit de remplacer setting par TRUE ce que j'ai fait mais c'est pas mieux
    Tu pourrais être plus préci ? Par exemple en postant 3/4 lignes de code et en nous expliquant le problème : ça ne compile pas, ça n'affiche pas le texte en gras, ton PC à explosé ?


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

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 236
    Points : 277
    Points
    277
    Par défaut
    Autant pour moi.
    Je peut vous balancer tout le code mais je préfére "cibler"

    Bon le problème c'est que ça compile pas

    Voici donc le code :
    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
    /*
    Conv€rt 4217
     
    Petit jeu de mot avec le ISO du symbole.
     
    Il s'agit d'un logiciel de conversion €uro/Franc et Franc/€uro.
    */
     
    #include <stdlib.h>
    #include <gtk/gtk.h>
     
    void OnDestroy(GtkWidget *pWidget, gpointer pData);
     
    int main(int argc,char **argv)
    {
        /* Declaration du widget et du label*/
        GtkWidget *pWindow;
        GtkWidget *pLabel;
        gchar* sUtf8;
        gchar *mise_en_gras;
     
        gtk_init(&argc,&argv);
     
        /* Creation de la fenetre */
        pWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
        /* Definition de la position */
        gtk_window_set_position(GTK_WINDOW(pWindow), GTK_WIN_POS_CENTER);
        /* Definition de la taille de la fenetre */
        gtk_window_set_default_size(GTK_WINDOW(pWindow), 320, 200);
        /* Titre de la fenetre */
        gtk_window_set_title(GTK_WINDOW(pWindow), "Convertisseur Euro/Franc");
     
        /* Creation du label */
        sUtf8 = g_locale_to_utf8("Bonjour et bienvenue dans le logiciel de converssion Conv€rt 4217.", -1, NULL, NULL, NULL);
        mise_en_gras = gtk_label_set_use_markup(GtkLabel *sUtf8, gboolean TRUE);
        pLabel=gtk_label_new(mise_en_gras);
        g_free(sUtf8);
                      /*
        J'ai utilisé la fonction "sUtf8" pour pouvoir afficher des caractéres spéciaux notament le signe €.
                      */
     
       /* On ajoute le label a l'interieur de la fenetre */
        gtk_container_add(GTK_CONTAINER(pWindow), pLabel);
     
     
        /* Connexion du signal "destroy" */
        g_signal_connect(G_OBJECT(pWindow), "destroy", G_CALLBACK(OnDestroy), NULL);
        /* Affichage de la fenetre et de tout ce qu'il contient */
        gtk_widget_show_all(pWindow);
     
        /* Demarrage de la boucle evenementielle */
        gtk_main();
     
        return EXIT_SUCCESS;
    }
     
    void OnDestroy(GtkWidget *pWidget, gpointer pData)
    {
        /* Arret de la boucle evenementielle */
        gtk_main_quit();
    }
    Et voici les erreurs :
    C:\Documents and Settings\vaillant\Mes documents\Projet\Programmation\Dev C++\Convertisseur Franc et Euro\V2 (Sous GTK+)\main.c In function `main':
    35
    C:\Documents and Settings\vaillant\Mes documents\Projet\Programmation\Dev C++\Convertisseur Franc et Euro\V2 (Sous GTK+)\main.c syntax error before "GtkLabel"

    C:\Documents and Settings\vaillant\Mes documents\Projet\Programmation\Dev C++\Convertisseur Franc et Euro\V2 (Sous GTK+)\Makefile.win [Build Error] [main.o] Error 1
    Pour le nom du logiciel c'était histoire de rigoler un peu entre les quelques lignes de code, je vous avou que c'est pas très drôle mais bon
    Environment Artist | Technical Artist | Game Art
    Porfolio Art Station

  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 : 46
    Localisation : France, Haut Rhin (Alsace)

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mise_en_gras = gtk_label_set_use_markup(GtkLabel *sUtf8, gboolean TRUE);
    Non non et non d'ailleurs si tu sais plus ou moins bien programmer en C tu aurais dû le savoir !


    Il faut faire comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mise_en_gras = gtk_label_set_use_markup(GTK_LABEL (pLabel), TRUE);
    Si tu veux mettre le texte en gras, formatte directement ta chaine avec la fonction gtk_label_set_markup comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    gtk_label_set_markup (GTK_LABEL (pLabel), "<b>Le texte ici</b>");
    Donc pour finir moi je ferais ainsi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    pLabel=gtk_label_new(NULL);
    sUtf8 = g_locale_to_utf8("<b>Bonjour et bienvenue dans le logiciel de converssion Conv€rt 4217.</b>", -1, NULL, NULL, NULL);
    gtk_label_set_markup (GTK_LABEL (pLabel), sUtf8);
    Là ca marchera sans doute mieux !
    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 actif Avatar de stilobique
    Homme Profil pro
    Infographiste 3D
    Inscrit en
    Septembre 2005
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Isère (Rhône Alpes)

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 236
    Points : 277
    Points
    277
    Par défaut
    Ok, alors je vais essayé.
    Merci de ta réponse Franck.h

    Non non et non d'ailleurs si tu sais plus ou moins bien programmer en C tu aurais dû le savoir !
    Désolé
    Comme je l'ai dit je suis un peu perdu, et je préfére faire des erreurs de ce type, les comprendres et ainsi progressé, donc encore merci.
    Environment Artist | Technical Artist | Game Art
    Porfolio Art Station

  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 : 46
    Localisation : France, Haut Rhin (Alsace)

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Citation Envoyé par killpatate
    Ok, alors je vais essayé.
    Merci de ta réponse Franck.h


    Désolé
    Comme je l'ai dit je suis un peu perdu, et je préfére faire des erreurs de ce type, les comprendres et ainsi progressé, donc encore merci.
    En fait pour moi et ce qui me parait logique, c'est que si tu ne maîtrise pas un minimum le C Standard, GTK+ faudrais laisser tomber immédiatement et étudier pendant plusieurs mois le C, GTK+ n'étant qu'une bibliothèque de fonctions additionnelles pour créer des interfaces utilisateurs graphiques !
    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 !

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

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 236
    Points : 277
    Points
    277
    Par défaut
    En fait je connait pas mal de chose théorique donc quand je passe à la pratique je pige plus rien, c'était un peu pareil pour le php au début.
    Environment Artist | Technical Artist | Game Art
    Porfolio Art Station

  8. #8
    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 : 46
    Localisation : France, Haut Rhin (Alsace)

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Citation Envoyé par killpatate
    En fait je connait pas mal de chose théorique donc quand je passe à la pratique je pige plus rien, c'était un peu pareil pour le php au début.
    Le C demande du sérieux, de la rigueure, de la patience et surtout de la pratique, le théorique à lui seul ne sert strictement à rien du tout et se lancer comme ca avec des bibliothèques additionnelles ne vont qu'empirer les choses et tu ne sera même pas capable de faire la différences entre les fonctions standards du C et les autres (POSIX, GLib, GTK+, etc...) donc le mieux serais de pratiquer le C pendant quelques temps histoire de le maitriser un minimum mais tout en restant dans le standard (je dirais C89, version utilisée dans tous les tutoriels et autres cours existants) !

    Comme ce cas précis:
    Citation Envoyé par killpatate
    Bref en fait je comprend absolument pas comment on utilise cette fonction qui est la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    void gtk_label_set_use_markup(GtkLabel *label, gboolean setting);
    Dans le cours il est dit de remplacer setting par TRUE ce que j'ai fait mais c'est pas mieux
    cela prouve bel et bien que tu ne connais pas du tout ton C, ce qui est très grave si tu passes sur GTK+ ou autres libs dans l'état actuel de tes connaissances ! J'admet qu'il est plus séduisant de créer des interfaces graphiques plutôt que d'écrire des programmes consoles mais GTK+ demande de connaître assez bien le C (comme tout autres bibliothèques) !

    Enfin moi ce que j'en dit, je ne fait que donner mon point de vue et des conseils après tu fait ce que tu veux mais programmer sans trop savoir ce qu'on fait n'est pas dans les habitudes d'un "bon" programmeur C
    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 !

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

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 236
    Points : 277
    Points
    277
    Par défaut
    Je te remerci de tes conseils et j'en prend note, mais comment faire plus de pratique ? Trouver des exercices ?
    Environment Artist | Technical Artist | Game Art
    Porfolio Art Station

  10. #10
    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 : 46
    Localisation : France, Haut Rhin (Alsace)

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Citation Envoyé par killpatate
    Je te remerci de tes conseils et j'en prend note, mais comment faire plus de pratique ? Trouver des exercices ?
    Sur Google on peut trouver pas mal de liens sinon tu as
    Cours et exercices Algorithmes
    Cours et exercices pour le C

    Sinon tu as pleins de sujet intéressants comme faire une calculatrice, un programme de gestion de DVD/CD Audio (projet qui reprend presque tous les concepts du C comme les listes donc les pointeurs par la même etc...) ... toujours en restant en mode console biensûr
    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 !

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

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 236
    Points : 277
    Points
    277
    Par défaut
    Merci bien à toi Franck.
    J'avais déjà trouvé le 1er URL mais je l'avais aussi perdu
    ENfin bref, merci bien.
    Environment Artist | Technical Artist | Game Art
    Porfolio Art Station

  12. #12
    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 : 46
    Localisation : France, Haut Rhin (Alsace)

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

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Citation Envoyé par killpatate
    Merci bien à toi Franck.
    J'avais déjà trouvé le 1er URL mais je l'avais aussi perdu
    ENfin bref, merci bien.
    Au plaisir
    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 !

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/02/2013, 02h08
  2. Fonction API
    Par margilb dans le forum C++Builder
    Réponses: 2
    Dernier message: 08/07/2002, 12h11
  3. Implémentation des fonctions mathématiques
    Par mat.M dans le forum Mathématiques
    Réponses: 9
    Dernier message: 17/06/2002, 17h19
  4. fonction printf
    Par ydeleage dans le forum C
    Réponses: 7
    Dernier message: 30/05/2002, 12h24
  5. FOnction api specifiant la position de la souris
    Par florent dans le forum C++Builder
    Réponses: 4
    Dernier message: 15/05/2002, 21h07

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