Демонстрация программы wxFormBuilder

Теперь, когда мы с вами в целом познакомились с возможностями и принципами построения интерфейсов на wxPython, я продемонстрирую, на мой взгляд, неплохую программу, которая позволяет автоматизировать процесс разработки интерфейса. Она называется

wxFormBuilder

и доступна по адресу:

https://github.com/wxFormBuilder/wxFormBuilder/releases

Так как я работаю под ОС Windows, то скачал файл wxFormBuilder_v3.9.0.exe и установил на компьютер. При запуске программа выглядит так:

В принципе, здесь все интуитивно понятно и если вы знаете принципы построения интерфейса в wxPython, то работа с этой программой у вас не должна вызвать каких-либо трудностей.

Для начала мы, конечно, должны выбрать одну из доступных форм на вкладе «Forms», например, Frame. И, затем, разместить на этом фрейме какой-либо сайзер (вкладка «Layout»). Пусть это будет BoxSizer. Справа на вкладке «Properties» будут отображаться свойства текущего элемента. Далее, поместим в этот сайзер текстовое поле ввода (вкладка «Common»). И в свойствах добавим флаг wx.EXPAND.

Следующим элементом добавим горизонтальный сайзер и в него поместим две кнопки. У сайзера установим флаг wx.ALIGN_CENTER_HORIZONTAL, а wx.EXPAND уберем. Затем, у кнопок пропишем названия «Да» и «Отмена» и назначим обработчики: onYes и onNo на вкладке «Events».

Вот так быстро мы создали интерфейс и если перейти на вкладку «Python», то будет высвечен код для реализации этого интерфейса. Его можно скопировать в нашу программу и при запуске увидим вот такое окно:

Недостатком wxFormBuilder является ограниченный набор виджетов, которые реализованы в этой программе. Хотя для большинства интерфейсов вполне достаточно. Также вкладка «Properties» отображает не все доступные свойства элементов и некоторые вещи приходится «докручивать» уже на уровне программы. Но, тем не менее, эта программа заметно облегчает построение интерфейсов и, обычно, используется для создания начальной заготовки, которая затем, дорабатывается программистом.

Итак, на этих занятиях мы с вами рассмотрели лишь основы использования wxPython для создания оконных приложений. В целом, у вас должно сложиться общее представление как это все работает. И теперь вы готовы уже самостоятельно постигать все высоты (или глубины, как посмотреть) этого интерфейсного модуля.

Видео по теме