LINUX.ORG.RU
Ответ на: комментарий от yoghurt

#include <gtk/gtk.h>

static void do_it (GtkButton *btn, gpointer data)
{
    GtkWidget *button, *vbox;
    vbox = (GtkWidget *) data;

    button = gtk_button_new_with_label ("I am your nightmare");
    gtk_box_pack_start (GTK_BOX(vbox), button, TRUE, TRUE, 0);
    gtk_widget_show (button);
}

int main (int argc, char **argv)
{
    GtkWidget *mainwin, *vbox, *button;
    
    gtk_init (&argc, &argv);

    mainwin = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    gtk_window_set_title (GTK_WINDOW(mainwin), "BUTTON MADNESS!!!111");

    vbox = gtk_vbox_new (TRUE, 0);
    gtk_container_add (GTK_CONTAINER (mainwin), vbox);

    button = gtk_button_new_with_label ("Make me bad");
    g_signal_connect (button, "clicked", G_CALLBACK (do_it), vbox);
    gtk_box_pack_start (GTK_BOX(vbox), button, TRUE, TRUE, 0);

    gtk_widget_show_all (mainwin);
    gtk_main ();

    return 0;
}

yoghurt ★★★★★
()
Ответ на: комментарий от yoghurt

Спасибо, именно это и нужно. Разобрался.

mono ★★★★★
() автор топика

вообще-то, всё, что писано на ГТК+ так и работает.

кроме поделок на Глейде.

trapezoid
()
Ответ на: комментарий от smh

Код как код, чего в нём ужасного? Если хотите совсем красивый код, то формочки нужно рисовать в редакторе или в отдельном файле. В любом случаи это неудобно постить в форуме.

Sova777
()
Ответ на: комментарий от smh

>Смотрю я на этот код, и действительно "I am your nightmare".

А по лично мне так всё чисто и логично. Ну да, надо было бы ещё добавить проверки на нулевые указатели и убрать фичу "выключать эту прогу только по Ctrl+C", но суть то не в этом.

..Как будто на куте получится красивее.

yoghurt ★★★★★
()
Ответ на: комментарий от yoghurt

>..Как будто на куте получится красивее.

На Куте получится чуть красивше засчет плюсов..

.... Но у нас есть Vala =)

mono ★★★★★
() автор топика
Ответ на: комментарий от yoghurt

первая строчка была на Smalltalk, для тех кто в танке =)

yoghurt ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.