On Friday 29 August 2008 10:28:13 am Paul McNett wrote:
> johnf wrote:
> > I'm using the code from the dComboBox.py to create a jKey type of
> > control. I am very close to having everything working. But I can not
> > catch the detele key in my code (see below) and I can't determine the
> > cause. This is on windows with the latest svn (have not checked Linux).
> >
> > I import dKeys and I'm checking to see if the evt.keycode
> > =dKeys.key_Delete. However, the key stoke never gets to the code. The
> > "dKeys.key_Back" get there so I sure I'm not doing anything to stop it.
> > I think something in Dabo is stopping the delete key and the reason I'm
> > posting in dev-list. I also can't see the delete in the dComboBox code.
> >
> > def jKey(self,evt):
> > self.mytimer.start()
> > if not self:
> > # The control is being destroyed
> > return
> > keyChar = evt.keyChar
> > print evt.keyCode
> > if evt.keyCode in (dKeys.key_Back, dKeys.key_Delete,
> > dKeys.key_Left,
> > dKeys.key_Numpad_delete, dKeys.key_Home):
> > keyChar=''
> > choiceStr=self.Choices[self.GetSelection()]
> > themarks=self.GetMark()
> > self.localString=choiceStr[themarks[0]:themarks[1]]
> > if len(self.localString) > 1:
> > self.localString= self.localString[:-1]
> >
> > if keyChar is not None and (keyChar.isalnum() or
> > keyChar.isspace() or
> > keyChar==''
> > or keyChar in """,./<>?;':"[]\\{}|[EMAIL
> > PROTECTED]&*()-_=+"""):
> > localStr= self.localString+keyChar
> > #if evt.EventObject.Value is not None:
> > #txt =evt.EventObject.Value+keyChar
> > #else:
> > #txt=keyChar
> >
> > findcntr = 0
> > foundOK=False
> > for i in self.Choices:
> >
> > if re.match('^'+localStr.upper(),i.upper()) is
> > not None:
> > self.PositionValue=findcntr
> > #self.SelectAll=False
> > #self.InsertionPoint=len(txt)
> > self.select(1, len(self.localString))
> > self.SetMark(0,len(localStr))
> >
> > self.localString=localStr
> > foundOK=True
> >
> > break
> > findcntr=findcntr+1
> > if not foundOK:
> > dabo.ui.beep()
> > self.SetMark(0,len(self.localString))
> >
> > evt.stop()
>
> I'm not seeing which key event you are binding, but try KeyDown, KeyUp,
> and KeyChar to see if there's any difference. KeyChar most likely won't
> fire.
>
>
> Paul
It works for the backspace? But I did attempt to bind the dEvents.KeyEvent
without success.
--
John Fabiani
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-dev
Searchable Archives: http://leafe.com/archives/search/dabo-dev
This message: http://leafe.com/archives/byMID/[EMAIL PROTECTED]