Salut à tous,
Voici un nouveau problème assez interessant :
Je voulais faire du dynamique dans mon interface graphique, une sorte de drag and drop, sauf que bon c'est avec des boutons pour le moment
Toujours est il que pour ajouter/retirer des éléments, j'ai vite renoncé aux gtk_box, qui sont compliquées à modifier en cours de boucle run, et j'ai juste mis une gtk_table, dont je modifie la taille lorsque j'ajoutes un élément.
Soit, ca marche trés bien pour l'ajout, par contre, pour enlever un élément, je coince
en tentant ceci :
il ne fait rien et en tentant ca :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 // On supprime le filtre de la liste de filtres : it = p->filtre; do{ it = it->next; }while(it->next); f = it->data; g_list_remove(p->filtre, f); p->nbf --; // nombre de filtres // On actualise l'IHM: gtk_table_resize(GTK_TABLE(p->FiltresTable), p->nbf, 5); gtk_widget_show_all(p->FiltresTable);
il me sort une erreur de type :
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 // On supprime le filtre de la liste de filtres : it = p->filtre; do{ it = it->next; }while(it->next); f = it->data; g_list_remove(p->filtre, f); p->nbf --; // On actualise l'IHM: gtk_table_resize(GTK_TABLE(p->FiltresTable), p->nbf, 5); it = p->filtre; do{ f2 = (filtres*)it->data; gtk_table_attach_defaults(GTK_TABLE(p->FiltresTable), GTK_WIDGET(f2->filtreBox), 0, 5, p->nbf -1, p->nbf); it = it->next; }while(it); gtk_widget_show_all(p->FiltresTable);
alors que ca n'est pas NULL (je teste un printf("%d\n", f->index); qui affiche le bon résultat)
Code : Sélectionner tout - Visualiser dans une fenêtre à part gtk_table_attach : assertion 'child->parent == NULL' failed
Voilou, en éspérant que vous quelqu'un y verra plus clair que moi
Bonne journée !
EDIT : à noter que le retrait de la GList fonctionne. C'est juste l'affichage qui plante.
Partager