Бесплатные дизайнеры интерфейсов для wxPython. Часть 3

Немного рекламы

Предыдущие части:
Часть 1
Часть 2

Это заключительная часть статьи-обзора, в которой мы рассмотрим программу Boa Constructor и подведем итоги в виде сравнительной таблицы.

Boa Constructor

Сайт программы - http://boa-constructor.sourceforge.net/
Версия на момент написания обзора - 0.6.1 beta от 5 июля 2007
Поддерживаемые языки и библиотеки: wxPython
Требования: Python 2.1 или выше, wxPython 2.4.0.7 или выше
Лицензия: GPL
Поддерживаемые ОС: Windows, Linux

Очень мощная среда для разработки программ на Python. Редактор интерфейсов - это только одна из составных частей этой IDE. Не смотря на то, что эта статья посвящена главным образом дизайнерам интерфейсов, не рассказать хотя бы в двух словах о других частях я не могу. Boa Constructor иногда называют Delphi для Python. На мой взгляд слишком громко сказано, но интерфейс чем-то действительно напоминает Delphi (см. скриншот ниже).

boa_designer.png: 1173x1023, 47k (30.05.2012 10:01)

На этом скриншоте показан интерфейс в режиме дизайнера. Как видите, действительно есть сходство с Delphi. Но интерфейс становится очень неудобным из-за того, что каждое окно, которое составляет интерфейс программы, независимо отображается в панели задач. Также неудобно, что при запуске программы открывается консольное окно Python, которое, если закрыть по неосторожности, завершает всю программу без предупреждения.

Boa Constructor умеет расставлять большое число компонентов. Чтобы Вы могли оценить их количество, я сделал скриншоты разных закладок на панели инструментов. На первой вкладке (New), правда, не столько виджеты, сколько вспомогательные элементы вроде создания файлов класса окна, диалогов, файлов конфигурации, C++, файлов справки и т.п.

А дизайнер, надо сказать, специфический. Чтобы понять как в нем сделать нужный интерфейс, у меня ушло около получаса. Чтобы Вы не ломали голову как работать с дизайнером, напишу основные шаги, которые необходимо проделать:

  • На панели New выбрать класс окна, который хотим создать (wx.Frame, wx.Dialog и т.п). После этого появится новый файл.
  • Нажатием кнопки Frame Designer открываем окно дизайнера. На следующем скриншоте показана вкладка исходника окна и окно дизайнера.

boa_makeframe.png: 705x411, 20k (30.05.2012 10:01)

  • На вкладке Containers/Layout выбираем первый сайзер, который надо положить на форму, затем щелкаем на форму. Во вкладке Sizers вкладки нового окна появится новый сайзер. После этого на сайзер можно класть компоненты с панели инструментов.

Немного непривычные действия надо проделать, чтобы положить компонент внутрь сайзера, который сам лежит внутри сайзера. Для этого надо сделать следющее:

  • Зайти на вкладку Sizers нужного окна и дважды щелкнуть на сайзер, внутрь которого надо положить контрол. Откроется окно, показывающее что лежит внутри сайзера. Сначала окно будет пустым.
  • Нажимаем кнопку New на панели этого окна и в списке появится надпись None, которая означает, что внутри сайзера зарезервировано место под компонент, но оно еще не заполнено, а на окне дизайнера появится заштрихованный квадратик (см. следующие два скриншота):

boa_sizer_none.png: 201x250, 5k (30.05.2012 10:01) boa_designer_sizer_none.png: 400x250, 4k (30.05.2012 10:01)

  • Выбираем нужный нам компонент и кладем его в этот заштрихованный квадратик, после чего в окне сайзера слово None заменяется на имя этого компонента. На следующем скриншоте показаны спроектированное окно, список сайзеров и содержимое каждого из них:

boa_sizers.png: 686x597, 27k (30.05.2012 10:01)

На этом, пожалуй, остановимся и кратко рассмотрим какие еще возможности предоставляет Boa Constructor. Во-первых, это полноценный отладчик с возможностью устанавливать точки остановок и просмотром переменных. Здесь я ничего подробно не буду описывать, просто покажу рабочий скриншот во время останова программы:

boa_debug.png: 1034x895, 56k (30.05.2012 10:01)

Есть просмотр диаграмм UML полученных классов. Пример одной такой диаграммы для класса окна, производного от класса wx.Frame, можете увидеть на скриншоте:

boa_uml.png: 363x441, 13k (30.05.2012 10:01)

Также в редакторе кода есть помощник (IntelliSense в терминологии Microsoft), который может показывать члены и функции классов, а переменные и функции. Вызывается помощник с помощью комбинации Ctrl+Пробел. На следующем скриншоте Вы можете увидеть как он выглядит.

boa_intellisense.png: 287x243, 4k (30.05.2012 10:01)

Из также приятных возможностей хочется отметить наличие встроенного ToDo List, профайлера, а также встроенную справку по самому языку Python, wxWidgets и wxPython в частности.

В итоге я рассматриваю Boa Constructor как хорошую IDE для разработки программ на Python. Единственным недостатком я бы назвал только интерфейс.

Сравнительная таблица

А теперь сведем краткие сведения о рассмотренных программах в таблицу. Таблица расположена на следующей странице.

Немного рекламы


Артем 09.08.2011 - 05:36

Boa

Поставил Boa на Ubuntu. Работать невозможно, падает после каждого чиха.


Подписаться на комментарии
Автор:
Тема:
 Ваш комментарий
 
 
Введите код 507
 

TpeHep 11.12.2007 - 16:08

Очень понравилось

Очень понравилась вреда разработки. советую попробовать всем. на счет недостатка интерфейса - не согласен - миленький интерфейсик

Неизвестный 17.12.2007 - 22:01

А мне не понравилось

Одно сплошное глюкалово. Даже сохранится нормально не дает. Вываливает какую-то непонятную ошибку.
Невозможно ничего сделать толково. Лучше уж в ручном режиме создавать интерфейс, чем в этом глючном "конструкторе".