def dobindings(self):
members = inspect.getmembers(self.__class__, inspect.ismethod)
for methodname, method in members:
if hasattr(method, AutoBind.attrname):
event = getattr(wx, method._event_name)
boundmethod = method.__get__(self, self.__class__)
pubname = method._event_name.lower() + '.' + self.name
boundmethod = PubSend(pubname)(boundmethod)
self.widget.Bind(event, boundmethod)
# self.owner.Bind(event, boundmethod, id=self.widget.GetId())
elif hasattr(method, AutoCallback.attrname):
boundmethod = method.__get__(self, self.__class__)
attr = getattr(self.__class__, method._var_name, None)
if attr is None:
attr = getattr(self, method._var_name, None)
attr.addcallback(boundmethod)
评论列表
文章目录