Probléme pour faire "agir" les comboBox
Bonjour, voici mon probléme
je cré une ComboBox simple avec quelques elements que j'insére avec un bouton dans une table
Code:
1 2 3 4 5 6 7 8 9 10 11
| /*** Creation de GtkComboBox ***/
mainWindow->pComboBox = gtk_combo_box_new_text();
/* Ajout de GtkComboBox */
gtk_table_attach_defaults(GTK_TABLE(mainWindow->tablePrincipale),mainWindow->pComboBox,21, 29, 4, 5);
gtk_table_attach(GTK_TABLE(mainWindow->tablePrincipale),mainWindow->personnageButton[0],21, 29, 5, 6,GTK_EXPAND, GTK_EXPAND | GTK_FILL,0, 0);
/* Ajout des elements */
gtk_combo_box_append_text(GTK_COMBO_BOX(mainWindow->pComboBox), "Selection1");
gtk_combo_box_append_text(GTK_COMBO_BOX(mainWindow->pComboBox), "Selection2");
gtk_combo_box_append_text(GTK_COMBO_BOX(mainWindow->pComboBox), "Selection3"); |
J'ai créé une fonction de callback qui fait que quand on clic sur le bouton, un message diferent aparait dans al console en fonction de l'element "actif" de la GTK ComboBox (je sais pas si je suis clair)
Code:
1 2
| //fonction callback
g_signal_connect (G_OBJECT (mainWindow->personnageButton[0]), "clicked", G_CALLBACK (FonctionBestiaireComboBox), mainWindow->pComboBox); |
et voici ma fonction appelé par le bouton
La comboBox et le bouton se trouve dans une structure "Window"
Code:
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
| static void FonctionBestiaireComboBox(GtkWidget * widget, gpointer data)
{
Window* mainWindow;
mainWindow = ( Window*) data;
gint index = -1;
index = gtk_combo_box_get_active (GTK_COMBO_BOX (mainWindow->pComboBox));
switch (index)
{
case 0:
printf("selection1!");
break;
case 1:
printf("selection2!");
break;
default:
printf("Je n'ai aucune phrase de prete pour cette selection ");
break;
(void) widget;
}
} |
Le code fonctionne, aucun warning, aucune erreur pourtant quand je clic sur le bouton, c'est toujours selection1 qui s'affiche dans la console, peut importe l'element séléctioné de la combobox
même si j'active par defaut la selection2
Code:
gtk_combo_box_set_active (GTK_COMBO_BOX (mainWindow->pComboBox), 1);
Tout ça m'améne à penser que le probléme se situe au niveau de la fonction static void FonctionBestiaireComboBox ou à ma fonction callback voila, je peut fournir tout le code si vous voulez, je voulais aps surcharger le post