Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 8, 2007 13:16:30

OlDer
От:
Зарегистрирован: 2006-07-19
Сообщения: 133
Репутация: +  0  -
Профиль   Отправить e-mail  

Офлайн

#2 Авг. 9, 2007 08:49:22

BJIaquMup
От:
Зарегистрирован: 2007-07-30
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

wxPython help

Это всё, опять же, хорошо. Но где взять примеры? А то в теории оно всё красиво… а как на практике.



Офлайн

#3 Авг. 9, 2007 13:47:56

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

wxPython help

Базовая примерница - здесь.
Базовый хелп - уже показывали.
Кое-что можно найти в инете просто погуглив.
Дальше, к сожалению, прийдется смотреть самому, читать исходники и думать.
Не стоит надеяться, что все принесут на блюдечке с голубой каемочкой.



Офлайн

#4 Авг. 9, 2007 17:39:26

BJIaquMup
От:
Зарегистрирован: 2007-07-30
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

wxPython help

Да какое там блюдечко! Да ещё и с каёмочкой.
Меня интересует, собственно, теперь только вот эта вещица: self.canvas.after . Какая замена существует в wxPython этому? Весь гугль облазил… Может я что-то недопонимаю?… :(



Офлайн

#5 Авг. 9, 2007 18:39:43

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

wxPython help

self.delay = wx.CallLater(1000, self.OnCallback)
OnCallback вызовится через секунду. Опять же - из примерницы взято.



Офлайн

#6 Авг. 10, 2007 12:58:03

BJIaquMup
От:
Зарегистрирован: 2007-07-30
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

wxPython help

Андрей Светлов
self.delay = wx.CallLater(1000, self.OnCallback)
OnCallback вызовится через секунду. Опять же - из примерницы взято.
Python 2.5 на CallLater ругается. Есть только CallAfter.
Я скачал, что Вы посоветовали (wxWidgets 2.8.4). CallLater (CallAfter) там нет. Не знаю, что там за примерница…



Офлайн

#7 Авг. 10, 2007 13:33:54

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

wxPython help

У меня есть книжка на английском wxPython in Action. Если надо, могу закачать куда-нибудь.



Офлайн

#8 Авг. 10, 2007 13:35:16

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

wxPython help

А вообще еще удобно смотреть справку по wxWidgets.



Офлайн

#9 Авг. 10, 2007 13:57:19

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

wxPython help

BJIaquMup
Я скачал, что Вы посоветовали (wxWidgets 2.8.4). CallLater (CallAfter) там нет. Не знаю, что там за примерница…
wxPython2.8 Docs Demos and Tools качается и устанавливается отдельно от wxPython

Boт часть из файла Timer.py “примерницы” которая демонстрирует исспользование CallLater:

    # Test 2 shows how to use the wx.CallLater class.

def OnTest2Start(self, evt):
# Call OnTest2Timer one second in the future, passing some
# optional arbitrary args. There is no need to hold a
# reference to this one, unless we want to manipulate or query
# it later like we do in the two methods below
self.t2 = wx.CallLater(1000, self.OnTest2Timer,
'a', 'b', 'c', one=1, two=2)
self.log.write("CallLater scheduled\n")
self.t2b2.Enable()

def OnTest2Stop(self, evt):
self.t2.Stop()
self.log.write("CallLater stopped, last return value was: %s\n" %
repr(self.t2.GetResult()))
del self.t2
self.t2b2.Disable()

def OnTest2Timer(self, *args, **kw):
self.log.write("CallLater called with args=%s, kwargs=%s\n" % (args, kw))

# Normally a FutureCall is one-shot, but we can make it
# recurring just by calling Restart. We can even use a
# different timeout or pass differnt args this time.
self.t2.Restart(1500, "restarted")

# The return value of this function is saved and can be
# retrived later. See OnTest2Stop above.
return "This is my return value"
BJIaquMup
Python 2.5 на CallLater ругается. Есть только CallAfter
У меня установлен Питон2.5 и ВХвиджеты 2.8
В PythonWin в консоли пишу wx. появляется окно с вариантами, есть там и CallLater и СallAfter



Офлайн

#10 Авг. 10, 2007 14:00:38

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

wxPython help

BJIaquMup
Python 2.5 на CallLater ругается. Есть только CallAfter.
Я скачал, что Вы посоветовали (wxWidgets 2.8.4). CallLater (CallAfter) там нет. Не знаю, что там за примерница…
Проверял на 2.4 b на 2.5. Работает и там и там, как ни странно.
import wx
help(wx.CallLater)
Примерница - это часть wxPython Docs Demos and Tools. Зовется Run the wxPython Demo. Очень наглядная штука.
CallLater - пример из wxPython overview/Process and Events/Timer.
Кстати, CallLater нужен, чтобы вызвать callback через указанное количество секунд.
CallAfter - сразу же после того, как обработается последнее событие из существующих сейчас в очереди событий. Т.е. - весьма скоро, без зримой задержки.

P.S. Какое-то загадочное отсутствие взаимопонимания…



Отредактировано (Авг. 10, 2007 14:03:30)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version