bonjour a tous !
alors je vous explique le fonctionnement de mon programme, puis le probleme.
Il s'agit de faire un jeu de loup et d agneau, sur un damier.

je me suis créer une structure :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
typedef struct block
{
        GtkWidget *pButton;
        GtkWidget *pImage_blanc;  
        GtkWidget *pImage_noir;  
        GtkWidget *pImage_loup; // 
        GtkWidget *pImage_agneau;// 
        gint x;
}t_block;
puis un tableau
Dans le main, je remplis tout les champs comme il se doit, et lorsque je clique sur un bouton je veux envoyer tout le tableau, je met donc ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
    for(i=0;i<10;i++)
    {
                     for(j=0;j<10;j++)
                     {
                                      g_signal_connect(G_OBJECT(block[i][j].pButton), "clicked", G_CALLBACK(jeu),  block);
                     }
    }
et voici le sous programme jeu.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
#include "biblio.h"
void jeu(GtkWidget *pButton, gpointer data)
 
{
 
   t_block** block;
   gint i=0;
   gint j=0;
   GtkWidget* pWindow;
 
 
  pWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL); 
    gtk_window_set_title(GTK_WINDOW(pWindow),"fenetre test"); 
    gtk_window_set_default_size(GTK_WINDOW(pWindow),320,200);
 
 
   block=(t_block**) data;
   for(i=0;i<10;i++)
   {
                    for(j=0;j<10;j++)
                    {
 
 
   if((block[i][j].x)==1)  gtk_widget_show_all(pWindow); 
}
}
 
}
Or je me suis rendu compte que la valeur block[i][j].x etait totalement farfelue et donc que le sous programme ne recevait pas les bonnes données.
Pouvez vous m'aidez svp?
En espérant avoir été clair dans mes explications