Рубрики
Без рубрики

wxpython: используя Pydispatcher вместо pubsub

Получите практические, реальные навыки Python на наших ресурсах и пути

Автор оригинала: Mike Driscoll.

На днях я написал обновленную версию моей статьи Pubsub WXPython Pubsub для Wxpython 2.9 и понял, что я никогда не стал пытаться попробовать Pydispatcher посмотреть, как он отличается от Pubsub. Я до сих пор не уверен, что он отличается внутренне, но я подумал, что было бы удовольствием «портировать» код Pubsub из последней статьи Pydispatcher. Давайте посмотрим, сколько изменений!

Начиная

Прежде всего, вам нужно будет получить Pydispatcher и установить его в свою систему. Если у вас установлен PUP, вы можете сделать следующее:

В противном случае перейдите к проекту Page SourceForge Page И скачать его оттуда. Одним из преимуществ использования PUBSUB в WXPYPHON заключается в том, что он уже включен в стандартное распределение WXPYPHON. Однако, если вы хотите использовать Pubsub за пределами WxPython, вам придется скачать свой автономный код код и устанавливать его тоже. Я просто думал, что я должен упомянуть об этом. Большинство разработчиков не любят загружать дополнительные пакеты на вершине других пакетов.

Во всяком случае, теперь, когда у нас есть Pydispatcher, давайте портим код и посмотрим, с чем мы в итоге!

Это не должно занимать слишком много времени, чтобы объяснить. Итак, мы импортируем Диспетчер от Pydispatch Отказ Затем мы редактируем другие меры Onsendandlose Метод, поэтому он отправит сообщения на нашему руководителю панели. Как? Делая следующее:

Затем в классе MyPanel мы настроили слушатель, как это:

Этот код рассказывает Pydispatcher прослушивать любой отправитель, который имеет сигнал Панеллистенер Отказ Если у него есть этот сигнал, то он позвонит панели MyListener метод. Это все, что нам пришлось сделать с портом из Pydispatcher. Разве это не так просто?