Найти - Пользователи
Полная версия: wx.Bind обработка паралельных событий, Как это организовать
Начало » GUI » wx.Bind обработка паралельных событий, Как это организовать
1
jona
....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)?
Заранее благодарен
Jenyay
В wx есть класс Thread. Правда сам с ним не работал, но думаю, что он мало отличается от работы с потоками в других библиотеках.
finic
Jenyay
В wx есть класс Thread. Правда сам с ним не работал, но думаю, что он мало отличается от работы с потоками в других библиотеках.
этот класс в wxPython кажется не включен, но работать можно с родными потоками Python.
у меня есть open source проектик - Remote File Browser, в нем реализован механизм работы с потоками, взять можно здесь http://finic.ucoz.ru
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB