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 52 53 54 55
   | #include <gtk/gtk.h>
#include <stdio.h>
 
/* Prototypes de fonction*/
 
int affichage (gpointer);
 
/* Variables globale */
GtkWidget *label;
 
int main(int argc, char* argv[])
{
	GtkWidget* window;
	GtkWidget* box;
	GtkWidget *scrollbar;
	int i;
 
	gtk_init(&argc, &argv);
	window = gtk_window_new(GTK_WINDOW_TOPLEVEL); 
	gtk_window_set_default_size(GTK_WINDOW(window), 320, 200); 
	gtk_window_set_title(GTK_WINDOW(window), "GtkScrolledWindow");
	g_signal_connect(G_OBJECT(window),"destroy",G_CALLBACK(gtk_main_quit),0);
 
	scrollbar = gtk_scrolled_window_new(NULL, NULL); 
	gtk_container_add(GTK_CONTAINER(window),scrollbar);
 
	box = gtk_vbox_new(FALSE,5);
	gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scrollbar), box);
 
	gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrollbar), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
 
	for(i = 1 ; i <= 20 ; ++i)
	{		
		label = gtk_label_new("");
		gtk_box_pack_start(GTK_BOX(box), label, FALSE, FALSE, 5);
		gtk_widget_show_all(window);	
		g_timeout_add(100,(GtkFunction)affichage,(gpointer)i);
		gtk_main();
	}
 
	gtk_widget_show_all(window);
 
	gtk_main(); 
 
	return 0; 
}
 
int affichage (gpointer variable)
{
	char texte[10];
	sprintf(texte, "Label %d", variable);
	gtk_label_set_text(GTK_LABEL(label),texte);
	gtk_main_quit();
	return 0;
} | 
Partager