GTK: Hello, World!

По традиции каждое руководство по программированию должно начинаться с кода программы "Hello, World!". Это тот самый код для GTK+:

  1. #include <gtk/gtk.h>
  2.  
  3. static void destroy(GtkWidget *widget, gpointer data)
  4. {
  5.     gtk_main_quit();
  6. }
  7.  
  8. int main(int argc, char *argv[])
  9. {
  10.     gtk_init(&argc, &argv);
  11.  
  12.     GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
  13.     gtk_window_set_title(GTK_WINDOW(window), "Hello, World!");
  14.     gtk_window_set_default_size(GTK_WINDOW(window), 200, 200);
  15.     g_signal_connect(window, "destroy", G_CALLBACK(destroy), NULL);
  16.  
  17.     GtkWidget *label = gtk_label_new("Hello, World!");
  18.     gtk_container_add(GTK_CONTAINER(window), label);
  19.  
  20.     gtk_widget_show_all(window);
  21.  
  22.     gtk_main();
  23.  
  24.     return 0;
  25. }

Загрузить исходный код примера

Данный код предназначен для создания окна (GtkWindow) с меткой (GtkLabel) для вывода текста.

Окно приложения Hello world
Окно приложения Hello world

Он может быть скомпилирован с помощью компилятора GCC путем исполнения следующей команды:

$ gcc helloworld.c `pkg-config --libs --cflags gtk+-3.0` -o helloworld

Также вы можете использовать компилятор CLang:

$ clang helloworld.c `pkg-config --libs --cflags gtk+-3.0` -o helloworld