- Создаем приложение используя GTK в Линуксе
- Графические интерфейсы Linux
- Awesome — быстрый, настраиваемый
- Budgie — графическая оболочка
- Cinnamon — среда рабочего стола
- Enlightenment
- GNOME — среда рабочего стола
- i3wm — тайлинговый оконный менеджер
- IceWM — легковесный, стабильный
- KDE (Plasma) — среда рабочего стола
- LXDE — lightweight desktop environment
Создаем приложение используя GTK в Линуксе
Разрабатывать приложения в Линуксе можно с помощью фреймворка GTK. Эта библиотека предназначенная для построения графического интерфейса пользователя. GTK — это свободное программное обеспечение, которое распространяется по лицензии GNU LGPL, что позволяет создавать как бесплатные так и коммерческие приложения.
С документациею и описанием библиотеки, Вы можете ознакомиться по следующей ссылке: https://www.gtk.org
Перед написанием приложения необходимо подготовить среду разработки. Для этих целей буду использовать ОС Ubuntu 22.04. Так как приложение будет разрабатываться на языке программирования Си необходимо установить необходимые пакеты и компилятор.
Откройте терминал от имени пользователя root и введите следующую команду:
sudo apt-get install build-essential
Также нам необходимо установить пакеты GTK для разработки приложения. Вводим следующую команду в терминале:
sudo apt-get install -y libgtk-3-dev
Теперь все готово для написания первого приложения. Открываем любой текстовый редактор и пишем следующий код:
#include int main (int argc, char *argv[])
Этот код создает окно. Но прежде чем выполнить приложение, давайте разберемся немного с кодом.
#include — здесь мы подключаем библиотеку gtk. Без этой библиотеки не будет работать графическое окно и мы не сможем запустить приложение;
GtkWidget *window; — задаем имя/метку окна;
window = gtk_window_new(GTK_WINDOW_TOPLEVEL); — эта строка создает стандартное окно с рамкой;
gtk_widget_show(window); — отображаем окно на дисплее.
Теперь давайте запустим приложение. Я сохранил код приложения в файле ex1.c в домашней папки.
Открывает терминал и вводим следующие команды:
gcc ex1.c -o ex1 `pkg-config —cflags —libs gtk+-3.0
Теперь давайте улучшим код и создадим текстовую метку.
#include int main (int argc, char *argv[])
GtkWidget *label1; — задаем имя текстовой метки;
label1 = gtk_label_new(«Hello! My first Program»); — создаем текстовую метку;
gtk_container_add(GTK_CONTAINER(window), label1); — эта строка кода добавляет метку в контейнер;
gtk_widget_show(label1); — отображаем метку в окне.
Надеюсь эта публикация была полезная. Так как фреймворк GTK имеет очень много полезных и интересных функций, что не дает возможности объяснить все в одной публикации.
Графические интерфейсы Linux
В данном разделе сайта публикуется информация о графических интерфейсах операционной системы Linux. Интерфейсы разделены на две группы: среды рабочего стола и оконные менеджеры.
Среда рабочего стола Linux (Desktop Environment) — это комплексная готовая к работе оболочка. Обычно среда рабочего стола включает панель задач, функциональные меню, менеджер входа в систему, программы настройки, базовые программы и другие функциональные элементы, включая оконный менеджер.
Оконный менеджер Linux (Window Manager) — это программа, которая занимается отрисовкой окон, позволяет перемещать и изменять размер окна, обрабатывает действия пользователя, которые он делает в окне программы. Оконный менеджер может работать независимо или быть в составе среды рабочего стола.
Awesome — быстрый, настраиваемый
Budgie — графическая оболочка
Cinnamon — среда рабочего стола
Cinnamon — самостоятельная среда рабочего стола, являющаяся ответвлением от Gnome 3, но имеющая дизайн в стиле классического Gnome.
Enlightenment
Enlightenment (или просто E) — легковесный оконный менеджер (пользовательское окружение) не требовательный к ресурсам компьютера, потребляет очень мало оперативной памяти.
GNOME — среда рабочего стола
GNOME — среда рабочего стола для Linux. Включает в себя набор утилит, прикладное программное обеспечение, системные утилиты и другие компоненты.
i3wm — тайлинговый оконный менеджер
i3 (i3wm) — тайлинговый оконный менеджер. Высокая производительность. Настройка через конфигурационные файлы. Широкие возможности управления горячими клавишами.
IceWM — легковесный, стабильный
KDE (Plasma) — среда рабочего стола
KDE — полнофункциональная среда рабочего стола. В рамках проекта KDE разрабатывается большое количество приложений для повседневных нужд. KDE использует библиотеки Qt.
LXDE — lightweight desktop environment
LXDE (Lightweight X11 Desktop Environment) — быстрая легковесная среда рабочего стола, не требовательная к ресурсам компьютера. В качестве оконного менеджера используется Openbox. Окна и меню открываются без задержек, интерфейс отзывчивый и не вызывает раздражения.