ÈçºÎʹÓÃGtk+ ²¶»ñÊó±ê×ó¼ü
ÄÄλ¸ßÊÖ¿ÉÒÔ¸æËßÎÒÈçºÎÓà GTK+ ²¶»ñÊó±ê×ó¼ü°´ÏÂÐźţ¡£¡ ×îºÃÄÜдһµãÀý×Ó£¬Ð»Ð»£¡ demonstration:[code]
#include <gtk/gtk.h>
int
button_press_handler(GtkWidget* __widget,
GdkEventButton* __evnet,
gpointer __data)
{
static int __n = 0;
char __str[50];
sprintf(__str, "You clicked %d times", __n++);
gtk_label_set_text(GTK_LABEL(__data), __str);
return 0;
}
int
exit(GtkWidget* __widget, gpointer __data)
{
gtk_main_quit();
return TRUE;
}
int
main(int __argc, char* __argv[])
{
GtkWidget* __win;
GtkWidget* __label;
gtk_init(&__argc, &__argv);
__win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
g_signal_connect (G_OBJECT (__win), "destroy",
G_CALLBACK (exit), NULL);
gtk_widget_set_size_request(__win, 400, 300);
__label = gtk_label_new("hello linux!");
gtk_widget_set_events(__win, GDK_EXPOSURE_MASK |
GDK_BUTTON_PRESS_MASK);
g_signal_connect(G_OBJECT(__win), "button_press_event",
G_CALLBACK(button_press_handler),
__label);
gtk_container_add(GTK_CONTAINER(__win), __label);
gtk_widget_show_all(__win);
gtk_main();
return 0;
}
[/code]
Ò³:
[1]