Bonjour, Je suis débutante en programmation "c", et je viens de commencer avec GTK+ , donc on problème c'est que j'ai creer une interface <voir l'image> où les spinbutton on était mis dans une table (3,1)

Nom : insertion.JPG
Affichages : 233
Taille : 24,0 Ko

donc pour pouvoir recevoir le jour, le moi et l'année j'ai cris ce programme mais ça ne marche pas. (je ne suis même pas sur que c'est la bonne méthode)

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
void insertion2(GtkWidget *buton, gpointer data)
{
    GtkWidget *msg=NULL;
    GtkWidget *err=NULL;
    char *ch;
    char fnom[30];
    strcpy(fnom,"temp.bin");
    GtkWidget *fenetre=gtk_window_new(GTK_WINDOW_TOPLEVEL);
    gtk_window_set_title(GTK_WINDOW(fenetre),"Resultats");
    gtk_window_set_default_size(GTK_WINDOW(fenetre),200,100);
    gtk_window_set_icon_from_file (fenetre,"Icone.png", NULL);
 
    GtkWidget *box=gtk_vbox_new(FALSE,0);
    gtk_container_add(GTK_CONTAINER(fenetre),box);
 
    GList *liste, *tete;
    GtkWidget *spinbut[3];
    GtkWidget *scale;
    GtkTable *table1;
 
    table1=gtk_table_new(1,3,TRUE);
    tete=gtk_container_get_children(GTK_CONTAINER((GtkWidget*)data));//la wilaya
    liste=g_list_next(tete);//l'entrée
 
    GtkWidget *entree=GTK_WIDGET(liste->data);
    gchar *texte=gtk_entry_get_text(GTK_ENTRY(entree));
    init_table(tab);//initialisation de la table contenant les noms des 48 wilayas à partir du fichier wilaya.txt
    int j,m,a,existe,e28/*erreur j>28 pour  m=02*/,e29/*erreur j>28 pour  m=02 année bissexstile*/,e30/*erreur j>28 pour  m ayant que 30j*/;
    float t;
    if(control_wilaya(tab,texte))//verifie si le nom de la wilaya introduit est correct
    {
        if(erfich) erreur_ouverture();
        liste=g_list_next(liste);//le tableau de la date
        liste=g_list_next(liste);//le tableau des spinbut
        table1=GTK_TABLE(liste->data);
        gtk_table_attach_defaults(GTK_TABLE(table1), spinbut[0],0, 1, 0, 1);
        gtk_table_attach_defaults(GTK_TABLE(table1), spinbut[1],1, 2, 0, 1 );
        gtk_table_attach_defaults(GTK_TABLE(table1), spinbut[2],2, 3, 0, 1 );
        j=gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spinbut[0]));
        m=gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spinbut[1]));
        a=gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spinbut[2]));
        /*liste=g_list_next(liste);//le mois
        liste=g_list_next(liste);//le spinbut du mois
        spinbut2=GTK_WIDGET(liste->data);
        m=gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spinbut2));//récupérer le mois
        liste=g_list_next(liste);//l'an
        liste=g_list_next(liste);//le spinbut de l'an
        spinbut3=GTK_WIDGET(liste->data);
         a=gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spinbut3));//récupérer l'année*/
         printf("jour: %d\n moi: %d\n année: %d",j,m,a);
        int nonpost=control_date_post(j,m,a,&e30,&e29,&e28);