On 10/14/11 8:03 AM, Ed Leafe wrote:
>
>> > Where does this have to go in my AppWizard generated code?
> I'll let Paul handle that question - I haven't worked with AppWizard
> code in a very long time.
Code generated by AppWizard is pure Python code. You'd look in the ui/
directory,
find the class definition of the object in question, and add your callback
method and
the bindEvent() call somewhere, probably in afterInit().
For example, say I wanted to bind to the KeyDown of the clientname textbox in
the
edit page of FrmClients. I'd edit the file ui/PagEditClients.py, and I'd find
the
clientname definition that looks something like:
30 ## Field clients.clientname
31 label = dabo.ui.dLabel(self, NameBase="lblclientname",
32 Caption=biz.getColCaption("clientname"))
33 objectRef = dabo.ui.dTextBox(self, NameBase="clientname",
34 DataSource="clients", DataField="clientname",
35 ToolTipText=biz.getColToolTip("clientname"),
36 HelpText=biz.getColHelpText("clientname"))
I would add the following line:
37 objectRef.bindEvent(dabo.dEvents.KeyDown, self.onKeyDown_clientname)
And scroll to the bottom of the class definition and add this method:
147 def onKeyDown_clientname(self, evt):
148 ed = evt.EventData
149 key, char = ed["keyCode"], ed["keyChar"]
150 print key, char
151 if char.lower() == "a":
152 evt.stop()
Paul
_______________________________________________
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/[email protected]