Bonjour!
J'essaie de programmer un petit soft en GTK+/C. J'aimerai ajouter un sous menu dynamique (du genre les dernières fichiers ouverts). Ainsi, pour ajouter la liste des fichiers, je fais ainsi :
filename est une chaîne de caractères contenant un chemin de fichier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 pMenuItem = gtk_menu_item_new_with_label(filename); gtk_menu_shell_prepend(GTK_MENU_SHELL(pSubMenu), pMenuItem); gtk_widget_show_now(GTK_WIDGET(pMenuItem)); g_signal_connect(G_OBJECT(pMenuItem), "activate", G_CALLBACK(OnOpenRecent), NULL);
Ce code marche bien à l'initialisation de la fenêtre (c'est-à-dire avant le gtk_main).
Mais, lorsque la fenêtre est déjà affiché et que je veux ajouter une nouvelle entrée, j'ai deux entrées qui sont affichées (au lieu d'une)! J'ai essayé d'enlever le gtk_widget_show_now, cette fois, j'ai rien qui s'ajoute. J'ai aussi utilisé les autres fonctions (gtk_widget_show et gtk_widget_show_all), j'ai le même résultat avec gtk_widget_show_now.
Et là, je bloque.
Merci d'avance à toutes les réponses.
Partager