Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » GUI
  • » wx.Bind обработка паралельных событий, Как это организовать [RSS Feed]

#1 Сен. 1, 2007 09:01:37

jona
От:
Зарегистрирован: 2007-09-01
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

wx.Bind обработка паралельных событий, Как это организовать

....panel......
self.button = wx.Button(...)
self.Bind(wx.EVT_BUTTON, self.OnConnect, self.button)
.............

def OnConnect(self,event):
if self.button.GetLabel() == "Connect":
self.button.SetLabel(label="Disconnect")
self.Process()
else:
self.button.SetLabel(label="Connect")
Очевидно, что такой код работать не будет. Обработчик событий ловит нажатие и не реагирует на другие события, пока не освободится это. Тем не менее, нужно реализовать программу, в которой некоторый процесс будет запускаться по нажатию на клавишу и выполняться до тех пор, пока на клавишу не нажмут еще раз. Короче говоря, чтобы обработчик процессов не блокировался, а выполнялся отдельным потоком.
Вопрос, как организовать отдельный поток для такого события средствами Python (wxPython)?
Заранее благодарен



Офлайн

#2 Сен. 1, 2007 10:00:05

Jenyay
От:
Зарегистрирован: 2007-08-10
Сообщения: 173
Репутация: +  1  -
Профиль   Отправить e-mail  

wx.Bind обработка паралельных событий, Как это организовать

В wx есть класс Thread. Правда сам с ним не работал, но думаю, что он мало отличается от работы с потоками в других библиотеках.



Офлайн

#3 Сен. 30, 2007 21:38:50

finic
От:
Зарегистрирован: 2007-06-25
Сообщения: 31
Репутация: +  2  -
Профиль   Отправить e-mail  

wx.Bind обработка паралельных событий, Как это организовать

Jenyay
В wx есть класс Thread. Правда сам с ним не работал, но думаю, что он мало отличается от работы с потоками в других библиотеках.
этот класс в wxPython кажется не включен, но работать можно с родными потоками Python.
у меня есть open source проектик - Remote File Browser, в нем реализован механизм работы с потоками, взять можно здесь http://finic.ucoz.ru

Офлайн

  • Начало
  • » GUI
  • » wx.Bind обработка паралельных событий, Как это организовать[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version