Salut à tous,
J'ai dans un programme une liste de bouton, et pour chaque boutton, j'aimerais créer un nouvel onglet.

Pour cela, je procède comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
membre1 = gtk_button_new_with_label("nom de l'onglet");
gtk_box_pack_start(GTK_BOX(boxPseudo), membre1, FALSE, FALSE, 1);
g_signal_connect(G_OBJECT(membre1), "clicked", G_CALLBACK(buttonPseudo), NULL);
J'ai une fonction qui s'appelle buttonPseudo :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
void buttonPseudo(GtkWidget *button)
{
	numOnglet++;
 
	const gchar *titreButton;
	onglet[numOnglet].sTitreOnglet = gtk_button_get_label (GTK_BUTTON(button));
	onglet[numOnglet].titreOnglet = gtk_label_new(onglet[numOnglet].sTitreOnglet);
 
	creerOnglet(onglet[numOnglet].titreOnglet);
}
Et une fonction créer onglet :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
void creerOnglet(GtkWidget *titre_onglet)
{
	GtkWidget *pLabel;
	gchar *sTabLabel;
	sTabLabel = g_strdup_printf("Page %d", numOnglet);
 
	pLabel = gtk_label_new(sTabLabel);
 
	gtk_notebook_append_page(GTK_NOTEBOOK(pNotebook), pLabel, titre_onglet);	// Création d'un nouvel onglet avec la zone de texte dedans
 
}

Mon pNotebook est en variable globale.
Le problème est que lorsque je fais ca :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
creerOnglet(onglet[numOnglet].titreOnglet);
Tout marche très bien, mais l'appuie sur les boutons ne donne rien...

Peut être que le problème viens de mon g_signal_connect(), je ne sais pas.

A savoir : Mes boutons se trouvent dans une box différentes que mon notebook.


Merci pour votre aide.