Форум сайта python.su
Добрый вечер!
Структура проекта такова:
project
…forms
……__init__.py
……MainWindow.py
……SettingsWindow.py
…app.py
Хочется, чтобы интерфейс описывался максимально отдельно (forms), а логика была отдельно в файле app.py. Вызывать из этого файла окна - не проблема, есть проблема обратного т.с. импорта:)
Т.е., допустим, мне нужно выполнить какую-нибудь функцию. Я её описываю в файле app.py. Но ведь эту функцию ещё нужно привязать к кнопке на форме! А для этого нужно в файле самой формы это прописывать, при её инициализации. Например, что-то вроде
app.Bind(wx.EVT_BUTTON, self.OnSettingsOpen, id = self.button_settings.GetId())
Отредактировано (Ноя. 10, 2010 10:56:25)
Офлайн
Вы можете добавить перед импортом следующие строки
import sys
sys.path.append('..')
Отредактировано (Ноя. 11, 2010 18:49:28)
Офлайн
Еще одно отдельное замечание - если вы в app вызываете окна и формы - то значит бизнес логика уже не отдельно.
наверное надо как-то так
root
guimain.py
lib_logic
__init__.py
app.py
……..
lib_form_storage
__init__py
form1.py
……
Но конечно решать вам.
Офлайн
Еще одно отдельное замечание - если вы в app вызываете окна и формы - то значит бизнес логика уже не отдельно.Хм. Интересное предложение. Спасибо, попробую организовать так:)
наверное надо как-то так
Офлайн