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
| #include <gtk/gtk.h>
GtkWidget *g_lbl_hello;
GtkWidget *g_lbl_count;
int main(int argc, char *argv[])
{
GtkBuilder *builder;
GtkWidget *window;
gtk_init(&argc, &argv);
builder = gtk_builder_new();
gtk_builder_add_from_file (builder, "window_main.glade", NULL);
window = GTK_WIDGET(gtk_builder_get_object(builder, "windows_main"));
gtk_builder_connect_signals(builder, NULL);
// get pointers to the two labels
g_lbl_hello = GTK_WIDGET(gtk_builder_get_object(builder, "lbl_hello"));
g_lbl_count = GTK_WIDGET(gtk_builder_get_object(builder, "lbl_count"));
g_object_unref(builder);
gtk_widget_show(window);
gtk_main();
return 0;
}
// called when button is clicked
void on_btn_hello_clicked()
{
static unsigned int count = 0;
char str_count[30] = {0};
gtk_label_set_text(GTK_LABEL(g_lbl_hello), "Hello, world!");
count++;
sprintf(str_count, "%d", count);
gtk_label_set_text(GTK_LABEL(g_lbl_count), str_count);
}
// called when window is closed
void on_window_main_destroy()
{
gtk_main_quit();
} |
Partager