Voici un exemple de liste a colonne.
Source / Exemple :
// colonne.c
// Exemple de liste a colonne
//
#include <gtk/gtk.h>
int main(int argc, char *argv[])
{
GtkWidget *Dialogue, *Bouton, *Clist;
gchar *titles[3] = {"colonne 0","colonne 1","colonne 2"};
gchar *info[3];
gint i = 0;
gtk_init(&argc, &argv);
Dialogue = gtk_dialog_new();
gtk_window_set_title(GTK_WINDOW(Dialogue), "Exemple de liste a colonne");
// cree une liste avec 5 collonnes.
Clist = gtk_clist_new_with_titles( 3, titles);
// permet de cacher la bordure
gtk_clist_set_shadow_type (GTK_CLIST(Clist), GTK_SHADOW_OUT);
// Permet de definir la taille des la colonne
gtk_clist_set_column_width (GTK_CLIST(Clist), 0, 80);
gtk_clist_set_column_width (GTK_CLIST(Clist), 1, 70);
gtk_clist_set_column_width (GTK_CLIST(Clist), 2, 60);
gtk_box_pack_start(GTK_BOX(GTK_DIALOG(Dialogue)->vbox), Clist, TRUE, TRUE, 0);
for(i=0; i < 10; i++)
{
info[0] = g_strdup_printf("ligne %d", i);
info[1] = g_strdup("coucou");
info[2] = g_strdup("");
gtk_clist_append(GTK_CLIST(Clist), info); // Ajoute une entree a la Clist
}
/*
// une ligne est selectionnee
gtk_signal_connect(GTK_OBJECT(clist), "select_row",
GTK_SIGNAL_FUNC(selectrow),
NULL);
// une ligne est deselectionnee
gtk_signal_connect(GTK_OBJECT(clist), "unselect_row",
GTK_SIGNAL_FUNC(unselectrow),
NULL);
Bouton = gtk_button_new_with_label("Fermer");
gtk_signal_connect_object(GTK_OBJECT(Bouton), "clicked", (GtkSignalFunc)gtk_exit, NULL);
gtk_box_pack_start(GTK_BOX(GTK_DIALOG(Dialogue)->action_area), Bouton , TRUE, TRUE, 0);
gtk_widget_show_all(Dialogue);
gtk_main();
return(0);
}
Conclusion :
vous pouvez evidement mettre autre chose que du texte dans les colonne.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.