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++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    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 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

  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 : 42
    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 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 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
    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

  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
    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 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
    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.

  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 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 !

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

Discussions similaires

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

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