|
программа из исходников в линуксе |
|
|
|
Jun 21 2011, 15:51
|
Гуру
     
Группа: Свой
Сообщений: 2 546
Регистрация: 23-05-07
Из: Самарская область Сызрань
Пользователь №: 27 923

|
Цитата Но так делают довольно часто Получается интерфейс программы поменять нельзя пез перекомпиляции библиотек ? все Графические объекты в библиотеках?, может есть какието конструкторы форм что бы можно было переделать что то. Вот например не плохой клиент icq pidgin link как добавить кнопку  ?
|
|
|
|
|
Jun 21 2011, 17:01
|
Гуру
     
Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847

|
Цитата(sergey sva @ Jun 21 2011, 19:51)  Вот например не плохой клиент icq pidgin link как добавить кнопку  ? Он построен на 2х оконных библиотеках GTK+ и ncurses. Для обоих интерфейс рисуется прямо в коде (хотя для GTK наверное какой нибудь дезайнер где нибудь есть). Так что, если надо добавить кнопку - то сорцы в руки и изучать, где там кнопки Вот например, кнопки из его сорцов: Код #define ADD_BUTTON(b, label, callback, callbackdata) do { \ GtkWidget *button = gtk_button_new_from_stock(label); \ gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); \ g_signal_connect(G_OBJECT(button), "clicked", callback, callbackdata); \ gtk_widget_show(button); \ b = button; \ } while (0)
/* Open button */ ADD_BUTTON(dialog->open_button, GTK_STOCK_OPEN, G_CALLBACK(open_button_cb), dialog); gtk_widget_set_sensitive(dialog->open_button, FALSE);
/* Remove button */ ADD_BUTTON(dialog->remove_button, GTK_STOCK_REMOVE, G_CALLBACK(remove_button_cb), dialog); gtk_widget_hide(dialog->remove_button);
/* Stop button */ ADD_BUTTON(dialog->stop_button, GTK_STOCK_STOP, G_CALLBACK(stop_button_cb), dialog); gtk_widget_set_sensitive(dialog->stop_button, FALSE);
/* Close button */ ADD_BUTTON(dialog->close_button, GTK_STOCK_CLOSE, G_CALLBACK(close_button_cb), dialog);
#undef ADD_BUTTON Файл pidgin/gtkft.c
|
|
|
|
|
Jun 21 2011, 19:28
|

Частый гость
 
Группа: Участник
Сообщений: 136
Регистрация: 7-01-09
Из: Нефтеюганск
Пользователь №: 42 967

|
Цитата(sergey sva @ Jun 21 2011, 21:51)  Получается интерфейс программы поменять нельзя пез перекомпиляции библиотек ? все Графические объекты в библиотеках?, может есть какието конструкторы форм что бы можно было переделать что то. Если нужно средство, чтобы быстро-быстро нарисовать гуй, то для GTK/Gnome есть Glade, для Qt — Qt Designer. P.S. Для Tk вроде бы тоже что-то такое есть.
--------------------
С уважением, Алексей Шапошников.
|
|
|
|
|
Jun 22 2011, 10:40
|
Гуру
     
Группа: Свой
Сообщений: 2 546
Регистрация: 23-05-07
Из: Самарская область Сызрань
Пользователь №: 27 923

|
Цитата Не в библиотеках, а в исходниках. А поменять что-то без перекомпиляции исходников затруднительно даже в Дельфи В исходниках храняться графические данные (вид) или свойства графических объектов? Без компиляции понятно я просто думал что в библиотеке храниться шаблон формы (вид) а в исходниках свойства размер итд.. И если в конструкторе формы поменять размеры то изменяться атрибуты автоматически , после компиляции изменения будут внесены. Этот вопрос задавал еще не совсем понимал как работают программы в линуксе  Сейчас разобрался. Думал вначале создается окно потом компилируется в библиотеку а потом программа взаимодействует с этой библиотекой. Еще есть вопрос по поводу ядра если соберу ядро поставлю, только ядро с драйверами которые нужны( без пакетов ) загружу его grub.. дальше нужно сделать свой пакет который будет работать с ядром какие есть api как это сделать ?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|