![]() |
Поделиться |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Поделиться |
![]()
Сообщение
#1
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 4384 Регистрация: 17.9.2009 Вставить ник Цитата Пользователь №: 1617 Страна: Россия Город: Санкт-Петербург Пол: Муж. Репутация: ![]() ![]() ![]() |
Предлагаю, выкладывать в этой теме примеры простейших программ и разную полезную информацию по GTK+.
Правда только если это будет кому-либо интересно на нашем форуме, например тема с Arduino у нас здесь заглохла . Поскольку плодить мертвые темы глупо, пишите если есть интерес, если интереса ни у кого не будет , тему просто удалим. PS А вообще у нас как-то тихо, что на Линуксе для всех , что здесь ![]() Сообщение отредактировал kostyalamer - 30.8.2014, 17:03 |
|
|
![]() |
![]()
Сообщение
#2
|
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Глоб. Модератор Сообщений: 10146 Регистрация: 22.6.2009 Вставить ник Цитата Из: Онега Пользователь №: 1352 Страна: Россия Город: Не указан Пол: Муж. Репутация: ![]() ![]() ![]() |
Так выкладывай что есть, а там видно будет
![]() А лично мне Qt достаточно. GTK+ - для меня уже излишество ![]() А то, что тихо на форуме... это уже глубокий кризис, и у меня прямо сейчас нет идей насчёт оживления. -------------------- Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
|
|
|
![]()
Сообщение
#3
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 4384 Регистрация: 17.9.2009 Вставить ник Цитата Пользователь №: 1617 Страна: Россия Город: Санкт-Петербург Пол: Муж. Репутация: ![]() ![]() ![]() |
Так выкладывай что есть, а там видно будет ![]() Ну ладно , полезные ссылки: http://habrahabr.ru/post/135809/ - для начала http://wiki.linuxformat.ru/wiki/LXF86:GTK%2B http://docstore.mik.ua/manuals/ru/gtk_plus/book1.html http://www.opennet.ru/docs/RUS/gtk_plus/ Для того что бы скомпилировать программу в altlinux на связке си и gtk+ надо дать команду : gcc -Wall -o имя_проги.c имя_проги `pkg-config --cflags --libs gtk+-2.0` ввиду хронической лени я забил в настройки Geany ( Сборка / Команды сборки ) : для компиляции : gcc -Wall -c "%f" `pkg-config --cflags --libs gtk+-2.0` для сборки : gcc -Wall -o "%e" "%f" `pkg-config --cflags --libs gtk+-2.0` и теперь обхожусь мышкокликаньем. В следующих постах подкину несколько простых шаблонов на основе которых достаточно бычтро можно написать свои программы вот простенький примерчик : Код # include <gtk/gtk.h> /* Подключаем библиотеку GTK+ */ # include <stdio.h> static int count = 0; int winx = 200; int winy = 200; void button_clicked(GtkWidget *button, gpointer data) // Обработчик нажатия кнопок { printf("%s pressed %d time(s) \n", (char *) data, ++count); } int main( int argc, char *argv[] ) { //GtkWidget *button; // Кнопка GtkWidget *button1; // Кнопка1 GtkWidget *button2; // Кнопка2 GtkWidget *button3; // Кнопка3 GtkWidget *button4; // Кнопка3 GtkWidget *window; // Главное окно GtkWidget *fixed; gtk_init( &argc, &argv ); // Инициализируем GTK+ window = gtk_window_new( GTK_WINDOW_TOPLEVEL ); // Создаем главное окно gtk_window_set_title( GTK_WINDOW( window ),"Тест кнопок gtk"); gtk_window_set_default_size(GTK_WINDOW(window), winx, winy); gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER); fixed = gtk_fixed_new(); gtk_container_add(GTK_CONTAINER(window), fixed); button1= gtk_button_new_with_label ("Кнопка 1"); gtk_fixed_put(GTK_FIXED(fixed), button1, 0, 0); gtk_widget_set_size_request(button1, winx, 50); g_signal_connect( G_OBJECT( button1 ), "clicked",GTK_SIGNAL_FUNC(button_clicked), "Button 1"); button2= gtk_button_new_with_label ("Кнопка 2"); gtk_fixed_put(GTK_FIXED(fixed), button2, 0, 50); gtk_widget_set_size_request(button2, winx, 50); g_signal_connect( G_OBJECT( button2 ), "clicked",GTK_SIGNAL_FUNC(button_clicked), "Button 2"); button3= gtk_button_new_with_label ("Кнопка 3"); gtk_fixed_put(GTK_FIXED(fixed), button3, 0, 100); gtk_widget_set_size_request(button3, winx, 50); g_signal_connect( G_OBJECT( button3 ), "clicked",GTK_SIGNAL_FUNC(button_clicked), "Button 3"); button4= gtk_button_new_with_label ("Выход"); gtk_fixed_put(GTK_FIXED(fixed), button4, 0, 150); gtk_widget_set_size_request(button4, winx, 50); g_signal_connect( G_OBJECT( button4 ), "clicked",GTK_SIGNAL_FUNC(gtk_main_quit), "Button 4"); // Выход по нажатию кнопки g_signal_connect_swapped(G_OBJECT(window), "destroy", G_CALLBACK(gtk_main_quit), NULL); // Выход по кресту на рамке gtk_widget_show_all(window); gtk_main(); return 0; } а вот как этот шаблон выглядит : ![]() PS во всех шаблонах код мой только частично , все остальное взято из интернета ![]() |
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 5.7.2025, 14:56 |