Anjuta — официальная интегрированная среда разработки графических программ GNOME для языков Си, C++, Vala, Java, JavaScript, Python.
В среде быстрой разработки пользовательских интерфейсов Anjuta, в отличие от Glade, мы можем создавать не только frontend, но и backend своего проекта на Python с использованием библиотеки GTK+.
В Ubuntu, IDE Anjuta можно установить через менеджер приложений. Можно установить расширенную версию Anjuta из командной строки:
sudo apt install anjuta-extras
Интерфейс программы хорошо русифицирован.
Запустите IDE Anjuta, создайте новый проект.
Дайте проекту имя, например, pygtk001 и выберите папку для проекта.
В IDE Anjuta расположите удобным для себя образом панели инструментов. На панели Project вы найдёте модули своего проекта.
Откройте свой модуль ui и вы увидите, что в вашем проекте уже есть 1 окно, созданное по шаблону. На панели Widgets я добавил заголовок для этого окна.
Откройте свой модуль py, здесь вы видите программу на Python, созданную для вашего проекта по шаблону автоматически.
От себя, я добавил в эту программу строчку print("Программа Hello World! завершена") которая будет выполнена перед завершением программы.
Anjuta создаёт пакет, который может быть инсталлирован в вашу систему. Посмотрите файловую структуру вашего проекта:
tree . └── pygtk001 ├── AUTHORS ├── autogen.sh ├── ChangeLog ├── configure.ac ├── COPYING ├── Makefile.am ├── NEWS ├── po │ ├── ChangeLog │ ├── LINGUAS │ └── POTFILES.in ├── pygtk001.anjuta ├── README └── src ├── Makefile.am ├── pygtk001.py ├── pygtk001.py~ └── pygtk001.ui 3 directories, 16 files
Я пока не хочу инсталлировать эту программу в свою систему, поэтому буду запускать программу pygtk001.py в папке src из командной строки. Но, в этом случае в моей программе мне необходимо изменить путь к файлу pygtrk001.ui:
UI_FILE = "pygtk001.ui"
Теперь можно перейти в папку src и в терминале запустить свою программу.
pygtk001/src$ ./pygtk001.py
Получили окно программы:
А после завершения программы, сообщение в терминале:
Программа Hello World! завершена
P.S. Рекомендуется указывать версию загружаемой Gtk библиотеки, например так
import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk, GdkPixbuf, Gdk import os, sys