Каков стандартный процесс создания приложения в wxPython, немного более сложного, чем мастер?

Я пытаюсь создать свой первый графический интерфейс на уровне ОС, используя wxPython. У меня есть книга wxPython в действии, и я просмотрел демоверсии кода. У меня нет опыта работы с программированием, управляемым событиями (кроме некоторого Javascript), сайзерами и всеми типичными элементами графического интерфейса. Книга организована немного странно и предполагает, что я знаю о программировании графического интерфейса ОС гораздо больше, чем на самом деле. Я также недавно начал заниматься объектно-ориентированным программированием. Я осознаю, что я явно не в себе.

Мое приложение с графическим интерфейсом простое: в основном набор экранов напоминаний («Включите сканер», «Включите принтер» и т. д.) и фоновые действия в Python либо в файловой системе, либо при обращении к веб-службе, но он настолько сложен, что кажется, что класс Wizard не совсем его охватывает. Приходится менять названия кнопок «Назад» и «Далее», временами отключать их и так далее.

Каков стандартный процесс для такого приложения, как мое?

1) Создать один wxFrame, затем поместить в него все мои wxPanels, скрыть все, кроме одного, затем выполнить последовательность скрытий и показов, когда срабатывает кнопка «Далее» (или текущий эквивалент)?

2) Создать несколько wxFrames, по одной wxPanel в каждом, а затем переключаться между ними?

3) Какая-то неочевидная мода на изменение названий кнопок в wxWizard и их отключение?

4) Что-то, чего я не ожидал в трех вышеперечисленных категориях.


person MetaHyperBolic    schedule 22.01.2010    source источник


Ответы (1)


Я плохо понимаю ваше приложение, но попытка заставить wxWizard соответствовать вашим потребностям звучит как плохая идея.

Я предлагаю ознакомиться с демонстрационными версиями, доступными на веб-сайте wxPython. Просмотрите каждую демонстрацию, и я уверен, вы найдете ту, которая соответствует вашим потребностям.

Лично я никогда не использовал wxWizard, так как считаю его слишком громоздким. Вместо этого я создаю последовательность диалогов, которые делают то, что мне нужно.

person gaefan    schedule 22.01.2010