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 :

probleme avec un bouton en gtk


Sujet :

GTK+ avec C & C++

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Juin 2016
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Juin 2016
    Messages : 20
    Par défaut probleme avec un bouton en gtk
    Bonjour à tous

    Voila : pour m amuser, j'ai voulu découvrir le C; puis pour faire un petit programme avec des boutons où il faut cliquer, j'ai décidé de m'essayer aux bibliothèques gtk ; je suis donc débutant et autodidacte dans ces 2 domaines.
    J'essaye depuis plusieurs semaines des faire un petit programme qui permettrait de déplacer un texte écrit dans un widget entry pour l'afficher en label sur un bouton gtk ; il existe une technique utilisant des box qui marche, mais comme le programme que je voudrais faire (plus tard) doit avoir beaucoup de boutons, je voulais me servir du gtk table qui permet, selon moi, de mieux placer ses boutons; j'ai donc fait le code d'essai 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
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    #include <stdlib.h>
    #include <gtk/gtk.h>
    void on_activate_entry(GtkWidget *pEntry, gpointer data);
     
     
    int main(int argc, char **argv)
    {
        GtkWidget *pWindow;
        GtkWidget *pTable;
         GtkWidget *pEntry;
          GtkWidget *pLabel;
          gchar* sUtf8;
     
     
        /* nombtre de boutons */
        GtkWidget *pButton[4];
    char test[]="gasp";
        gtk_init(&argc, &argv);
     
        pWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
        /* dimension fenetre */
        gtk_window_set_default_size(GTK_WINDOW(pWindow), 300, 300);
         /* titre fenetre */
        gtk_window_set_title(GTK_WINDOW(pWindow), "marche pas");
        g_signal_connect(G_OBJECT(pWindow), "destroy", G_CALLBACK(gtk_main_quit), NULL);
     /* Creation du GtkEntry */
        pEntry = gtk_entry_new();
     
        /* Creation et insertion de la table 4 lignes 6 colonnes */
        pTable=gtk_table_new(4,6,TRUE);
        gtk_container_add(GTK_CONTAINER(pWindow), GTK_WIDGET(pTable));
     
      /* Creation du label avec     g_locale_to_utf8 */
        sUtf8 = g_locale_to_utf8("salut", -1, NULL, NULL, NULL);
        pLabel=gtk_label_new(sUtf8);
    g_free(sUtf8);
     
     
     
     
        /* Creation des boutons */
        /* le bouton 0 devrait afficger salut et changer lorsque l on fait entrer */
        pButton[0]= gtk_button_new_with_label( pLabel);/* ici mon plabel doit poser probleme*/
     
        pButton[1]= gtk_button_new_with_label(test);
        pButton[2]= gtk_button_new_with_label("chiffre2");
     
     
     
        /* Insertion des boutons  */
        gtk_table_attach(GTK_TABLE(pTable), pButton[0],
            2, 4, 0, 1,
            GTK_EXPAND | GTK_FILL, GTK_EXPAND,
            0, 0);
        gtk_table_attach_defaults(GTK_TABLE(pTable), pButton[1],
            1, 2, 1, 2);
        gtk_table_attach(GTK_TABLE(pTable), pButton[2],
            4, 5, 1, 2,
            GTK_EXPAND, GTK_EXPAND | GTK_FILL,
            0, 0);
     
     
     
        gtk_table_attach_defaults(GTK_TABLE(pTable), pEntry,
            2, 4, 3, 4);
     
        /* Connexion du signal "activate" du GtkEntry */
        g_signal_connect(G_OBJECT(pEntry), "activate", G_CALLBACK(on_activate_entry), (GtkWidget*) pLabel);
     
        gtk_widget_show_all(pWindow);
     
        gtk_main();
     
        return EXIT_SUCCESS;
    }
     
    /* Fonction callback execute lors du signal "activate" */
    void on_activate_entry(GtkWidget *pEntry, gpointer data)
    {printf("test reussi\n");
        const gchar *sText;
     
        /* Recuperation du texte contenu dans le GtkEntry */
        sText = gtk_entry_get_text(GTK_ENTRY(pEntry));
        printf("%s\n",sText);
     
        /* Modification du texte contenu dans le GtkLabel */
        gtk_label_set_text(GTK_LABEL((GtkWidget*)data), sText);
    }
    mais voila, à la ligne du pbutton[0], je n'arrive pas à faire afficher mon plabell, qui ne doit donc pas être du bon type ; j'ai regardé plein de trucs sur internet, mais je ne comprends pas ce qu'il faut faire pour faire que le plabell soit modifiable, et même, qu'il affiche salut dès le début; mon résultat est le suivant ; merci de votre aide.
    Images attachées Images attachées  

Discussions similaires

  1. [MFC] Probleme avec les bouton et les CEdit
    Par ksoft dans le forum MFC
    Réponses: 4
    Dernier message: 12/05/2006, 14h03
  2. Probleme avec les boutons radio
    Par aproust dans le forum Linux
    Réponses: 3
    Dernier message: 11/05/2006, 08h05
  3. probleme avec le bouton precedent...
    Par julien_s dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/03/2006, 10h45
  4. probleme avec le bouton refresh du navigateur
    Par Chromatic dans le forum Langage
    Réponses: 7
    Dernier message: 26/02/2006, 12h26
  5. [FLASH MX] Probleme avec un bouton flash
    Par kgadhi dans le forum Flash
    Réponses: 8
    Dernier message: 02/12/2005, 14h06

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