wxpython — Pubsub между файлами

#python #wxpython

#python #wxpython

Вопрос:

Я создаю графический интерфейс и использую шаблон MVC для его создания. При этом я использую pubsub для управления событиями между серверной частью и внешним интерфейсом.

Как я могу заставить pubsub перемещаться по файлам?

Мои файлы находятся по ссылке прямо здесь. (Это довольно длинные файлы, иначе мой пост был бы огромным.)


Например:

В строке 31 из gui_btn_panel.py программа подписывается на ENABLE NEXT почтовый ящик ( pub.subscribe(self.next_step,"ENABLE NEXT") ).

Затем в строке 232 из gui_step_1.py программа публикует сообщение с тегом ENABLE NEXT ( pub.SendMessage("ENABLE NEXT") ).


Я хочу gui_btn_panel.py перехватить это сообщение, но, похоже, этого не происходит.

Если я что-то перепутал, дайте мне знать! Надеюсь, кто-нибудь сможет мне с этим помочь.

Ответ №1:

Это странно. Я использую pubsub, который включен в сам wxPython, и у меня никогда не было этой проблемы, но я делаю это немного по-другому:http://www.blog.pythonlibrary.org/2010/06/27/wxpython-and-pubsub-a-simple-tutorial

Надеюсь, это поможет вам. Если нет, вы можете попробовать опубликовать в официальном списке рассылки wxPython. Я знаю, что автор pubsub есть там, и он отвечает на вопросы там.

Комментарии:

1. Но вы видели, в чем моя проблема, верно? Значит, это не моя реальная программа, которая выглядит сломанной?

2. Это выглядит правильно, если вы следуете инструкциям на веб-сайте pubsub, да. На самом деле, вы, кажется, делаете это точно так же.

3. НАКОНЕЦ-то понял! Мне просто нужно было добавить from pubsub import setuparg1 в gui_main.py . Все работает отлично, благодаря указаниям Оливера.