The OpenNET Project
 
Поиск (ключи):    ПРОГРАММЫ СТАТЬИ СОВЕТЫ ФОРУМ
  WIKI НОВОСТИ (+) MAN'ы ДОКУМЕНТАЦИЯ

Каталог документации / Раздел "Программирование, языки" / Оглавление документа

3.1.1 Полный Hello, World

Рисунок 3..1: Hello, World

#include <gtk/gtk.h>

static gint delete_event_cb(GtkWidget *w, GtkEventAny *e,
                            gpointer data);
static void button_click_cb(GtkWidget *w, gpointer data);

int main(int argc, char *argv[])
{
  GtkWidget *window;
  GtkWidget *button;
  GtkWidget *label;
  
  gtk_init(&argc, &argv);
  window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
  button = gtk_button_new();
  label = gtk_label_new("Hello, World!");
  
  gtk_container_add(GTK_CONTAINER(button), label);
  gtk_container_add(GTK_CONTAINER(window), button);
  
  gtk_window_set_title(GTK_WINDOW), "Hello");
  gtk_container_set_border_width(GTK_CONTAINER(button), 10);
  
  gtk_signal_connect(GTK_OBJECT(window), "delete_event",
                     GTK_SIGNAL_FUNC(delete_event_cb), NULL);
  gtk_signal_connect(GTK_OBJECT(button), "clicked",
                     GTK_SIGNAL_FUNC(button_click_cb), label);

  gtk_widget_show_all(window);
  
  gtk_main();
  return 0;
}

static gint delete_event_cb(GtkWidget *window, GdkEventAny *e,
                            gpointer data)
{
  gtk_main_quit();
  return FALSE;
}

static void button_click_cb(GtkWidget *w, gpointer data)
{
  GtkWidget *label;
  gchar *text;
  gchar *tmp;
  
  label = GTK_WIDGET(data);
  gtk_label_get(GTK_LABEL(label), &text);
  tmp = g_strdup(text);
  g_str_reverse(tmp);
  gtl_label_set_text(GTK_LABEL(label), tmp);
  g_free(tmp);
}



Подсекции

Linux Land
2000-09-15

АКЦИЯ! ПОДПИШИСЬ на журнал Linux Format до 31 января 2012 года и выиграй СУПЕРПРИЗ!

Журнал "Linux Format" (Линукс Формат)- Единственный в России и странах СНГ журнал на русском языке, посвящённый Linux и свободному ПО. Журнал для IT-директоров, IT-менеджеров, программистов, системных администраторов, учителей школ и преподавателей ВУЗов и всех пользователей ПК. В каждом выпуске: Новости индустрии OpenSource, обзоры новинок свободного ПО, обучающие и методические статьи.

Каждый, кто оформит подписку, получает бонус- объёмные наклейки на системный блок и подарки: с одним из первых выпусков журнала в 2012 году- диск с архивом номеров за 2005-2011 г.г. и ежемесячно электронную версию журнала в pdf-формате.

Подробнее о проведении акции вы можете прочитать на странице сайта.


  Закладки на сайте
  Проследить за страницей
Created 1996-2012 by Maxim Chirkov  
ДобавитьРекламаВебмастеруГИД  
RUNNet TopList