Ed Leafe wrote:
> On Jun 13, 2007, at 10:57 AM, johnf wrote:
> 
>> When I design a class and want to bind an Event (to the class) do I  
>> bind it as
>> self.Form.bindEvent(dEvent,????, _function) since I don't have an  
>> instance of
>> the class?    IOW how can I bind an event to my class from within  
>> the class?
> 
>       I'm not sure I understand what you mean. First, if the event is  
> something that is raised by your class, you can't bind the form to  
> it: a double-click in a grid is not sent to the form; it's sent to  
> the grid. So what I think you want to do is bind an event in your  
> class to a pre-determined form method. If that is the case, and you  
> don't mind linking the classes like that, you would probably do  
> something like this in your class:
> 
> def initEvents(self):
>       if self.Form and hasattr(self.Form, "someHandler"):
>               self.bindEvent(dEvents.SomeEvent, self.Form.someHandler)
> 
> This will bind 'SomeEvent' (whatever you desire) to a method on the  
> form called 'someHandler', as long as that method exists.

Or, from the form (which knows it has the grid):

class MyForm(...):
        def afterInit(self):
                self.grid = dabo.ui.dGrid(self,...)
                self.grid.bindEvent(dEvents.Whatever, self.onWhatever)

        def onWhatever(self, evt):
                # called when the grid's Whatever event happens.

-- 
pkm ~ http://paulmcnett.com


_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-users
Searchable Archives: http://leafe.com/archives/search/dabo-users
This message: http://leafe.com/archives/byMID/dabo-users/[EMAIL PROTECTED]

Reply via email to