Как установить glade linux
Редактор пользовательского интерфейса Glade позволяет вам создавать и редактировать интерфейсы пользователя приложений GTK+ .
Библиотека GTK+ предоставляет обширную коллекцию строительных блоков пользовательского интерфейса, таких как поля ввода текста, диалоги, выпадающие списки, поля для отметки и меню. Эти блоки называются виджетами . Вы можете использовать Glade для того, чтобы размещать виджеты в графическом интерфейсе пользователя. Glade позволяет изменять размещение и свойства этих виджетов. Также вы можете использовать Glade для того, чтобы добавлять добавлять связи между виджетами и исходным кодом приложения.
Интерфейс пользователя, созданный в Glade, сохраняется в формате XML, что позволяет легко интегрироваться с другими инструментами. Вы можете использовать библиотеку libglade для того, чтобы динамически создавать интерфейс пользователя из описания на языке XML.
2 Первые шаги
2.1 Запуск Glade
Вы можете запустить Glade следующими способами:
Choose Programming ▸ Glade Interface Designer .
Для запуска Glade из командной строки, наберите следующую команду и нажмите Enter : glade-3
2.2 Когда вы запускаете Glade
При запуске Glade появляется следующее окно.
Окно Glade содержит следующие элементы:
Меню в строке меню содержит все команды, которые необходимы вам для работы с файлами в Glade .
Панель инструментов содержит часть команд, к которым вы имеете доступ в строке меню.
В области конструирования пользовательский интерфейс может быть отредактирован с помощью мыши.
Палитра содержит виджеты, которые могут быть использованы при создании пользовательского интерфейса
Окно структуры проекта отображает информацию о виджетах в проекте.
Редактор свойств позволяет управлять свойствами виджетов, а также добавлять связи с исходным кодом.
Строка статуса отображает информацию о текущей выполняемой операции Glade и контекстную информацию о элементах меню.
3 Работа с проектами
3.1 Создание нового проекта
Для того, чтобы создать новый проеrn, выберите Файл ▸ Новый . Приложение отобразит новый пустой проект в окне Glade .
3.2 Открытие проекта
Для того, чтобы открыть существующий проект, выберите Файл ▸ Открыть . Приложение отобразит проект в окне Glade .
3.3 Сохранение проекта
Вы можете сохранять проекты следующими способами:
- Для сохранения изменений текущего файла проекта, выберите Файл ▸ Сохранить .
- To save a new project file or to save an existing project file under a new filename, choose File ▸ Save As . Enter a name for the project file in the Save As dialog, then click Save .
4 Работа с виджетами
- 4.1. Выбор виджетов из окна палитры
- 4.2. Организация виджетов в проекте
- 4.3. Перемещение виджета в буфер обмена
- 4.4. Копирование виджета в буфер обмена
- 4.5. Вставка виджета из буфера обмена в проект
- 4.6. Удаление виджета
- 4.7. Изменение свойства виджета
4.1 Выбор виджетов из окна палитры
Вы можете работать с виджетами из окна Палитра следующими способами:
Для использования режима выделения, щёлкните на стрелку Выделитель . Указатель сменится на стрелку. Это означает, что режим выделения активен. В этом режиме вы можете использовать мышь для выбора виджетов в вашем проекте. Вы можете использовать окно Свойств для редактирования свойств виджетов.
Вы можете использовать также контекстное меню для выбора виджета. Щелчок правой кнопкой мыши открывает контекстное меню виджета.
Вы можете добавлять множество виджетов нужного вида из Палитры в ваш проект, удерживая клавишу Ctrl в момент выбора виджета. Вам необходимо щёлкнуть на стрелке Выделитель или другом виджете в Палитре для возврата в обычный режим.
Для использования режима выделения, выберите виджет в окне Палитра . При выборе большей части виджетов указатель меняется на указатель с пересечением. После этого вы можете добавлять виджет в контейнеры, виджеты верхнего уровня и т.д. После того, как вы разместите виджет, режим переключается в режим выделения.
Для использования выберите виджет верхнего уровня в окне Палитра . Когда вы выберите его, виджет немедленно появится на вашем рабочем столе. Вы можете редактировать виджет. После выбора виджета верхнего уровня, режим переключается в режим выделения.
4.2 Организация виджетов в проекте
Вы можете использовать контейнеры виджетов для размещения и организации виджетов в вашем проекте. Вы можете выбрать следующие контейнеры из окна Палитра :
- Горизонтальный контейнер
- Вертикальный контейнер
- Таблица
- Фиксированный
- Горизонтальная группа кнопок
- Вертикальная группа кнопок
- Горизонтальная панель
- Вертикальная панель
- Записная книжка
- Рамка
- Прокручиваемое окно
- Окно просмотра
Вы можете вкладывать контейнеры для создания сложных структур размещения. Когда вы создаёте горизонтальные и вертикальные контейнеры, Glade спрашивает, сколько строк или столбцов необходимо создать для начала, хотя строки и столбцы могут быть легко добавлены или удалены позже.
Когда вы создали все контейнеры, которые вам необходимы, вы можете добавлять виджеты, такие как метки, кнопки и более сложные виджеты в контейнеры. Заметьте, что Glade упаковывает виджеты
4.3 Перемещение виджета в буфер обмена
To remove a widget from a parent and place the widget on the clipboard, select the widget then choose Edit ▸ Cut .
4.4 Копирование виджета в буфер обмена
To copy a widget to the clipboard, select the widget then choose Edit ▸ Copy . The original widget remains attached to the parent.
4.5 Вставка виджета из буфера обмена в проект
To paste a widget that exists on the clipboard into your project, choose Edit ▸ Paste .
Все виджеты должны иметь в Glade уникальное имя. Если вы вырежете виджет, а потом вставите его в ваш проект, виджет и все его потомки сохранят свои имена. Если вы скопируйте виджет и вставите его несколько раз в свой проект, тогда Glade создаст новые имена для копий виджетов.
4.6 Удаление виджета
To delete a widget from the parent without moving the widget to the clipboard, select the widget then choose Edit ▸ Delete .
4.7 Изменение свойства виджета
Редактор свойств используется для редактирования свойств выбранного виджета. Для того, чтобы изменить свойство виджета, выберите виджет и введите подходящее значение в одно из полей свойств окна свойств.
5 О программе Glade
Glade поддерживается разработчиками Glade и волонтёрами сообщества GNOME. Для того, чтобы узнать больше о Glade, посетите Веб-сайт Glade.
Для того, чтобы сообщить об ошибке или внести предложение, касающееся этого приложения или руководства к нему, вы можете предоставить их на рассмотрение в bugzilla.
Другим хорошим источником информации о Glade являются списки рассылки user и developer. Кроме возможности подписаться на них, вы можете просмотреть архивы списков рассылки, которые доступны по этим ссылкам.
This program is distributed under the terms of the GNU General Public license as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. A copy of this license can be found at this link, or in the file COPYING included with the source code of this program.
В GNU / Linux разработка приложений с использованием Python 3, Glade и GTK + 3 очень проста, пакеты входят в состав большинства дистрибутивов по умолчанию.
Через просека мы можем быстро и легко создавать пользовательские интерфейсы, а затем использовать их вместе с Python. Для этого вы используете PyGObject благодаря системе самоанализа, предлагаемой GNOME, которая значительно облегчает быструю разработку приложений (RAD); также можно использовать наши интерфейсы, созданные с помощью Glade, из других языков программирования.
Проблема возникает, когда мы хотим использовать наши приложения в Microsoft Windows, поскольку до недавнего времени не было официальных пакетов для этой системы.
В этом руководстве предполагается, что приложения, созданные в GNU / Linux с использованием Python 3 и GTK + 3, без проблем запускаются в Windows.
требования
- Python 3.3
- Gtk + 3
- Glade 3.14 или выше (дизайнер GUI)
- PyGobject
Установка в Windows
Он начнется с создания папки с именем программного обеспечения. или другое по вашему выбору, и мы сохраним в нем все загруженные пакеты.
Нажав на ссылку (установщика Windows) установщик Python загрузится.
Обе версии Python и Glade являются 32-битными, но они безупречно работают на 64-битных системах.
Надо скачать версию для GTK + 3
PyGObject в коде Google
Установка пакетов
К этому моменту у нас уже есть все загруженные пакеты в папке программного обеспечения. и поскольку мы загрузили каждый пакет, мы начнем сначала с установки Python.
Установка Python
Установка очень проста, мастер проведет нас через весь процесс; Все варианты оставляем отмеченными по умолчанию.
Программа установки Python
Как видно на изображении, Python устанавливается в папку C: \ Python33 \ По умолчанию мы оставляем все как есть и продолжаем установку.
Папка установки Python
На этом этапе установки выбираем опцию Добавьте python.exe в путь, с той целью, чтобы при запуске интерпретатора Python он выполнялся без необходимости добавлять его в системный путь вручную.
Добавить Python в системный путь
Затем мы завершаем установку, и Python будет установлен в нашей системе.
Установка поляны
Установка Glade не представляет серьезного осложнения, мы запускаем программу установки и следуем инструкциям мастера.
Установка PyGObject
Мы скачали пакет pygi-aio-3.4.2rev11.7z, этот пакет включает библиотеки PyGObject для Python 3.3 и GTK + 3 для Windows, сжатые с помощью 7-молнии, разархивируем и у нас будет папка со следующим содержимым:
Содержимое папки pygi-aio-3.4.2rev11.7
Теперь копируем папку GTK a C: \ Python33 \ Lib \ сайты-пакеты где установлены сторонние пакеты для Python.
Скопируйте папку gtk
Папка Gtk в C: \ Python33 \ Lib \ site-packages
Возвращаемся в нашу папку pygi-aio-3.4.2rev11 и открываем папку py33 для версии Python - 3.3
Содержимое папки py33
Мы выбираем весь контент Папка py33 и копируем обратно в папку C: \ Python33 \ Lib \ сайты-пакеты, нас попросят смешать и перезаписать, мы отвечаем утвердительно. Содержимое папки сайты-пакеты это будет так, как показано на следующем изображении:
Скопируйте содержимое папки py33 в C: \ Python33 \ Lib \ site-packages
Проверка правильности установки PyGobject и GTK + 3
PyGobject и GTK + 3 установлены правильно
Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.
Полный путь к статье: Из Linux » программирование » Разработка приложений с Python 3, Glade и GTK + 3 в Windows
Вы можете быть заинтересованы
24 комментариев, оставьте свой
Оставьте свой комментарий Отменить ответ
А почему ГТК? Разве не лучше было бы развиваться в QT? помимо того, что он мультиплатформенный, и многие говорят, что это будущее
Что ж, две замечательные графические библиотеки на рабочем столе GNU / Linux - это GTK и QT, каждая из которых выбирает ту, которую предпочитает. Нет причин драться.
Разница между GTK и QT в том, что последний представляет собой фреймворк, действительно очень хороший, но будучи фреймворком, он потребляет немного больше ресурсов.
Например, Mozilla Firefox, Google Chrome, LibreOffice и многие другие созданы с использованием GTK; Это не значит, что он лучше QT, каждый должен выбрать тот, который соответствует его предпочтениям и потребностям, мы не хотим вызывать по этому поводу дискуссию.
Google Chrome с версии 33, оставьте gtk.
и почему объяснение для Windows, а не для Linux
Это потому, что в Linux все уже упаковано и находится в официальных репозиториях каждого дистрибутива? В Fedora, например, у меня уже установлены Python 3, Gtk + 3 и PyGobject по умолчанию. Если я хочу Glade, это просто «yum install glade». Легко, правда? 🙂
Потому что, как говорит Херман, для дистрибутивов GNU / Linux они уже упакованы, и их очень легко установить; например установить glade в Debian очень просто:
возможность установить поляну
Если я захочу использовать Python 2.7, шаги будут такими же?
Очевидно, что при установке 2.7-битного Python 32 (даже если вы используете 64-битную ОС) вместо папки py33 пойдет 2.7. Это сработает?
Спасибо.
Ну да, если у вас возникнут проблемы, оставьте мне комментарий.
Спасибо, уже попробовал и пока "Hello world" у меня работает.
Я посмотрю, смогу ли я получить хороший учебник по pyGTK3 или как там он называется, и любые проблемы, предупреждение.
Карамба! Большое спасибо!
Это дает мне следующую ошибку:
Traceback (последний последний вызов):
Файл "C: \ Users \ User \ Desktop \ test.py", строка 24, в
win = IconViewWindow ()
Файл «C: \ Users \ User \ Desktop \ test.py», строка 19, в __init__
pixbuf = Gtk.IconTheme.get_default (). load_icon (значок, 64, 0)
Файл "C: \ Python27 \ lib \ site-packages \ gi \ types.py", строка 47, в функции
return info.invoke (* args, ** kwargs)
GError: Значок 'gtk-cut' отсутствует в теме
Я пробовал использовать другие значки, но они тоже не работают. Мне нужно установить тему? Спасибо сейчас.
То же самое и в примере 19. Перетаскивание.
pixbuf = Gtk.IconTheme.get_default (). load_icon (icon_name, 16, 0)
Я не могу найти значок, но в других примерах вы можете их использовать. Это дает мне ошибку только тогда, когда я хочу использовать его с этой функцией (здесь icon_name можно заменить на значение, такое как Gtk.STOCK_CUT или что-то еще, и это дает точно такую же ошибку).
Я продолжаю разговаривать сам с собой. В других примерах меня работает то, что изображения загружаются на кнопки. Я не могу загрузить значки с помощью функции, представленной в двух приведенных ранее примерах.
Думаю, ошибка понятна:
GError: Значок 'gtk-cut' отсутствует в теме
Видно, что этот значок недоступен, используйте другой значок. Вероятно, сопровождающий пакета не включил значки темы или его нельзя найти в пути по умолчанию, используйте дистрибутив GNU / Linux и посмотрите, появляется ли по-прежнему та же ошибка.
Что касается вопроса 19, похоже, он связан с версией PyGobject, в верхней части документации говорится:
Внимание
Версия PyGObject = 3.0.3 требуется для работы следующих примеров.
У вас версия 3.0, попробуйте дистрибутив GNU / Linux; а затем мы должны дождаться, пока они обновят пакет (для Windows) или, в любом случае, вы можете скомпилировать его самостоятельно.
Приветствую и идем дальше.
В Ubuntu все учебные примеры идеально подходят для меня. В Windows это все равно не работает. Придется подождать. Другой пример, который не ходит, - это Spinner, который не выполняет анимацию. Привет и спасибо.
Я выполнил инструкции по установке и установил все шаг за шагом.
И выполняем следующий код:
из gi.repository import Gtk
def button_click (сам, виджет):
текст = self.cadroTexto.get_text ()
self.label.set_text ("волна% s"% текст)
if __name__ == »__ main__»:
FiestraPrincipal ()
Gtk.Main ()
Я получаю такой ответ:
Traceback (последний последний вызов):
Файл «C: / Users / admin / Google Drive / test / SaudoForm.py», строка 3, в
из gi.repository import Gtk
Файл "C: \ Python33 \ lib \ site-packages \ gi \ __ init__.py", строка 27, в
из ._gi import _API, Repository
ImportError: Ошибка загрузки DLL:% 1 не является допустимым приложением Win32.
Кто-то знает, в чем проблема и каково ее возможное решение.
Большое спасибо.
Интересно. Я выполнил установку в Linux, но объяснение для окон в порядке, теперь оно есть в обоих. 😉
gtk+ - это мультиплатформенный тулкит для создания GUI. Предоставляя полный набор виждетов, gtk+ пригоден в различных проектах: от одноразовых игрушек до набора приложений уровня предприятия.
Сегодня gtk+ работает с любым X сервером, Direct Framebuffer'ом и производными в Microsoft Windows NT. Библиотека gtk+ известна от Linux, где она является базисом для построения виджетов рабочей среды GNOME. gtk+ включен практически во все дистрибутивы Linux, и стабильно работает под управлением Windows NT. (в 2000 работала нестабильно, если мне память не изменяет)
Портирование gtk+ на Mac OS X запланированно, но необходима заинтересованность других людей. Это зов к участию.
2. Установка
2.1 Скачивание/Установка
Linux, MacOSX, FreeBSD и другие: Проверьте наличие требуемых пакетов gtk-sharp, mono в вашем дистрибутиве.
Windows: программируйте Windows.Forms, не хрен лезть в GTK =) [примечание автора]
gdk-sharp (http://www.mono-project.com/monodoc/N:Gdk)
низкоуровневый инструментарий для "рисования", используемый gtk+
Шаг 1. Присядьте удобнее
Мы должны чувствовать себя комфортно. Откройте Dr. Pepper и включите любимую музыку. Хорошо, теперь мы готовы.
Шаг 2. Создание папок и файлов
Для начала нам нужно создать новую директорию для маленького проекта. (Пользователи Windows: давайте не будем использовать пробелы в названии директории, чтобы избежать в дальнейшем головной боли).
Откройте shell (Если вы в Windows, откройте меню сПуск :) далее Программы -> Mono 1.x.x -> Mono Command Prompt. Она автоматически установит нужные пути к mono библиотекам.) Перейдите в только что созданную директорию. Мы часто будем использовать консоль, поэтому оставьте ее запущенной.
Вернемся к делу. Откройте свой любимый редактор (MonoDevelop, vi, emacs, notepad и т.д.) и создайте новый пустой проект (если это возможно) или создайте новый пустой файл. Сохраните файл под именем "helloworld.cs".
Шаг 3. Формирование кода
Это должно выглядеть весьма знакомо для Вас. Только теперь мы можем воспользоваться компилятором. Сохраним исходный код, перейдем в консоль и построим проект:
Для тех кто пользовался csc компилятором в Windows параметр "-pkg:" может показаться незнакомым. Этого параметра не было в csc, потому что Mono пришел из мира Linux. Этот параметр позволяет указать на необходимость подключения пакета gtk-sharp-2.0. Т.е. система ищет файл "gtk-sharp-2.0.pc", который содержит данные о местоположении библиотеки для этого пакета (среди другой информации). Т.е. мы не должны вводить "-r:gtk-sharp-2.0.dll -r:atk-sharp-2.0.dll -r:pango-sharp-2.0.dll . " руками.
Шаг 4. Добавление графического интерфейса GUI
Теперь давайте вернемся обратно к нашему коду. Уберем оператор "Console.WriteLine". Первое, что мы сделаем - создадим новое окно. Проделаем это добавлением нового оператора new Window и блока приложения (для начала нити цикла main). Вот так:
Теперь скомпилируем исходный код так же как мы делали это раньше, и запустим программу
В итоге вы получите что-то вроде этого:
Не так уж и сложно, да?
Первая вещь, которую Вы могли заметить, это то, что в отличии от использования System.Windows.Forms мы не писали код для точной компоновки текста в окне. Например, мы не писали 'myLabel.Left = 100' или 'myLabel.Width = 200' или что-то подобное для размещения текстовой метки на форме, мы просто пишем 'myWin.Add(. )'. И все это потому, что 'Gtk.Window' - это виджет, который наследуется от Bin, или одиночного виджета который размещен в контейнере Container.
Шаг 5. Формирование окна
Возможно Вы захотите спросить себя "Как я смогу добавить новый виджет на окно, если оно может содержать только один виджет?" До этого мы говорили, что Window действительно может содержать в себе только один виджет, но виджет сам по себе может содержать в себе множество других виджетов. Некоторые из этих виджетов наследуются от контейнера Gtk.Box, а в некоторых случаях напрямую от контейнера. Контейнерный виджет Bin наследуется напрямую от виждета-контейнера, как и многие другие виджеты, но Bin может содержать в себе только один элемент управления.
Шаг 6. Добавление событий
Многие их этих событий могут быть обработаны стандартным обработчиком событий. Например:
public static void HandlerMethod(object obj, EventArgs args)
Пример обработки событий нажатия на кнопку:
public static void ButtonPressHandler(object obj, ButtonPressEventArgs args)
- EventType.Nothing
- EventType.Delete
- EventType.Destroy
- EventType.Expose
- EventType.MotionNotify
- EventType.ButtonPress
- EventType.TwoButtonPress
- EventType.ThreeButtonPress
- EventType.ButtonRelease
- EventType.KeyPress
- EventType.KeyRelease
- EventType.EnterNotify
- EventType.LeaveNotify
- EventType.FocusChange
- EventType.Configure
- EventType.Map
- EventType.Unmap
- EventType.PropertyNotify
- EventType.SelectionClear
- EventType.SelectionRequest
- EventType.SelectionNotify
- EventType.ProximityIn
- EventType.ProximityOut
- EventType.DragEnter
- EventType.DragLeave
- EventType.DragMotion
- EventType.DragStatus
- EventType.DropStart
- EventType.DropFinished
- EventType.ClientEvent
- EventType.VisibilityNotify
- EventType.NoExpose
- EventType.Scroll
- EventType.WindowState
- EventType.Setting
Например, для использования события Gdk.Event мы можем использовать такой код:
В примере выше вы можете увидеть как обнаружить было ли одиночное нажатие мышкой или это был двойной клик.
4.1.1 Что такое glade файлы?
Файлы, записанные в XML формате, которые представляют собой GUI в GTK+, сохраняя сюда все аттрибуты и свойства.
4.1.2 На что похожи файлы .glade?
Файл .glade содержит в себе всю необходимую информацию для того, чтобы библиотека libglade могла воссоздать GUI.
Шаг 2. Интеграция glade файлов с нашей программой
В намерениях нашего примера мы предпологаем, что GUI был сохранен в файл gui.glade, который содержит описание окна window1, кнопки button1 и метки label1.
4.2.1 Как скомпилировать?
Теперь мы должны скомпилировать исходный файл glade.cs указывая пространство имен для glade, которое находится в библиотеке glade-sharp. Команда компиляции следующая:
Коммандой mcs -pkg:glade-sharp мы создаем программу glade.exe, а опция -resource внедряет файл gui.glade в исполняемую программу.
Передавая null как первый параметр в конструктор Glade.XML, мы сообщаем библиотеке libglade загружать glade файл из ресурсов, как вариант использования конструктора, файл может быть загружен из файловой системы, что особенно полезно тогда, когда Вы не хотите перекомпилировать GUI приложение после каждого изменения .glade файла.
Если мы запускаем программу наш GUI может открыться, однако, нажимая на кнопки Вы не добьетесь эффекта, потому как мы не назначали событий виджету, определенному в gui.glade файле. Изучив следующую секцию Вы научитесь это делать.
4.4 Как обращаться к виджетам определенным в gui.glade
Применяем это определение к нашему примеру как следует ниже в коде:
4.5 Как добавить событие
Для добавления событий Вам необходимо следовать примеру кода ниже. Вы также можете добавлять события из Glade.
unboxing turtles slime surprise toys learn colors (Ноябрь 2021).
Table of Contents:
Создание приложений в Linux может быть выполнено разными способами, но есть ограниченные способы, поэтому используются самые простые и функциональные языки программирования и библиотеки, поэтому мы кратко рассмотрим создание приложений под Linux. рабочий стол с использованием библиотеки GTK + с языком программирования Python, который называется « PyGObject ».
PyGObject использует GObject Introspection для создания привязки для языков программирования, таких как Python, PyGObject - это следующее поколение PyGTK, можно сказать, что PyGObject = Python + GTK3.
Создание приложений с графическим интерфейсом в Linux - часть 1
Сегодня мы собираемся начать серию о создании приложений с графическим интерфейсом (GUI) под рабочим столом Linux с использованием библиотеки GTK + и языка PyGobject. В этой серии будут рассмотрены следующие темы:
Часть 1. Как создавать приложения с графическим интерфейсом на рабочем столе Linux с помощью PyGObject. Часть 2. Создание более продвинутых приложений PyGobject в Linux. Часть 3. Создание собственных приложений «Веб-браузер» и «Настольный рекордер» с использованием PyGobject. Часть 4. Упаковка программ PyGobject для Linux. Рабочий стол. Часть 5. Перевод приложений PyGobject на разные языки.
О Питоне
О ГТК +
GTK + - это кроссплатформенный инструментарий с открытым исходным кодом для создания графических пользовательских интерфейсов для настольных приложений. Он был впервые запущен в 1998 году в качестве инструментария с графическим интерфейсом для GIMP, позже он использовался во многих других приложениях и вскоре стал одним из самых известных. библиотеки для создания графических интерфейсов. GTK + выпущен под лицензией LGPL.
Создание приложений с графическим интерфейсом под Linux
Существует два способа создания приложений с использованием GTK + и Python:
- Написание графического интерфейса с использованием только кода.
- Разработка графического интерфейса с использованием программы « Glade »; это инструмент RAD для простого проектирования интерфейсов GTK +, Glade генерирует графический интерфейс в виде XML-файла, который можно использовать с любым языком программирования для создания графического интерфейса. После экспорта XML-файла графического интерфейса мы сможем связать XML-файл с нашими Программа для выполнения работ, которые мы хотим.
Мы объясним оба пути вкратце.
Путь только по коду
Написание GUI с использованием только кода может быть немного сложным для программиста-нуба и тратить очень много времени, но используя его, мы можем создавать очень функциональные GUI для наших программ, больше, чем те, которые мы создаем с помощью некоторых инструментов, таких как Glade.
Давайте возьмем следующий пример.
Скопируйте приведенный выше код, вставьте его в файл « test.py », установите разрешение 755 для файла test.py и запустите файл позже, используя « ./test.py », вот что вы получите.
Сценарий Hello World
Нажав на кнопку, вы увидите « Привет, мир! Предложение распечатано в терминале:
Тестовый скрипт Python
Позвольте мне объяснить код в подробном объяснении.
Вот и все, легко не так ли? И очень функционально, если мы хотим создать несколько больших приложений. Для получения дополнительной информации о создании интерфейсов GTK + с использованием только кода, посетите официальный сайт документации по адресу:
Python GTK3 Tutorials
Поляна Путь Дизайнера
Как я уже говорил в начале статьи, Glade - очень простой инструмент для создания интерфейсов, которые нам нужны для наших программ, он очень популярен среди разработчиков, и с его помощью было создано множество отличных интерфейсов приложений. Этот способ называется «Быстрая разработка приложений».
Вы должны установить Glade, чтобы начать использовать его в Debian / Ubuntu / Mint и запустите:
$ sudo apt-get установить поляну
На RedHat / Fedora / CentOS запустите:
После того, как вы загрузите и установите программу, и после ее запуска вы увидите доступные виджеты Gtk слева, нажмите на виджет « окна », чтобы создать новое окно.
Создать новый виджет
Вы заметите, что новое пустое окно создано.
Новое окно Виджет
Теперь вы можете добавить некоторые виджеты к нему, на левой панели инструментов щелкните виджет « кнопка » и щелкните пустое окно, чтобы добавить кнопку в окно.
Вы заметите, что идентификатор кнопки - « button1 », теперь перейдите на вкладку «Сигналы» на правой панели инструментов, найдите сигнал « нажал » и введите « button1_clicked » под ним.
Теперь, когда мы создали наш графический интерфейс, давайте его экспортируем. Нажмите на меню « Файл » и выберите « Сохранить », сохраните файл в вашем домашнем каталоге с именем « myprogram.glade » и выйдите.
Экспорт файла виджета
Теперь создайте новый файл « test.py » и введите в него следующий код.
Сохраните файл, дайте ему 755 разрешений, как и раньше, и запустите его, используя « ./test.py », и вот что вы получите.
Окно Hello World
Нажмите на кнопку, и вы заметите, что « Привет, мир! Предложение печатается в терминале.
Теперь давайте объясним новые вещи:
- Обработчик класса : Здесь мы создаем класс под названием «Обработчик», который будет включать определения действий и сигналов, которые мы создаем для GUI.
- builder = Gtk.Builder () : мы создали новую глобальную переменную под названием «builder», которая является виджетом Gtk.Builder, это важно для импорта файла .glade.
- builder.add_from_file («myprogram.glade») : здесь мы импортируем файл «myprogram.glade», чтобы использовать его в качестве графического интерфейса по умолчанию для нашей программы.
- builder.connect_signals (Handler ()) : Эта строка соединяет файл .glade с классом обработчика, так что действия и сигналы, которые мы определяем в классе «Обработчик», работают нормально, когда мы запускаем программу.
- ournewbutton = builder.get_object («button1») : теперь мы импортируем объект «button1» из файла .glade, а также передаем его глобальной переменной «ournewbutton», чтобы использовать ее позже в нашей программе.
- ournewbutton.set_label («Hello, World!») : Мы использовали метод «set.label», чтобы установить для текста кнопки по умолчанию предложение «Hello, World!».
- window = builder.get_object («window1») : Здесь мы вызвали объект «window1» из файла .glade, чтобы показать его позже в программе.
Вот и все! Вы успешно создали свою первую программу под Linux!
Конечно, есть много более сложных вещей, чтобы сделать реальное приложение, которое делает что-то, поэтому я рекомендую вам взглянуть на документацию GTK + и GObject API по адресу:
Вы разрабатывали какое-либо приложение раньше под рабочим столом Linux? Какой язык программирования и инструменты использовали для этого? Что вы думаете о создании приложений с использованием Python & GTK 3?
Читайте также: