Wow! That was unexpected. I tried the simpler example below in notepad. If KeyPressedEvent function is not the place to trap a key and prevent it from being passed to an application, where can this be accomplished? That would possibly explain why I had timing issues with the delete/backspace portion in the original example. Void Function KeyPressedEvent (Int iKeyCode, String sKeyMapName, Int iBraille, Int iAttachedToScript) SayString ("char pressed = " + sKeyMapName) If sKeyMapName == "LeftControl+s" || sKeyMapName == "RightControl+s" Then SayString ("pressed desired key Control+s! Should not pass to application and to bring up Save As dialog.") Return EndIf ; process all other keys KeyPressedEvent (iKeyCode, sKeyMapName, iBraille, iAttachedToScript) EndFunction Don Marang ----- Original Message ----- From: "Jim Bauer" <holdsworthfan@xxxxxx> To: <jawsscripts@xxxxxxxxxxxxx> Sent: Friday, June 12, 2009 12:46 PM Subject: [jawsscripts] Re: Modifying keypressed event > In my experience, KeyPressedEvent has no bearing on what is and is not > passed to the active application. > > A quick and dirty test case can be fabricated using notepad and trying > to return from KeyPressedEvent when an inherent keystroke (i.e. > left/rightControl+S) is detected. The code in your control structure > will execute and the key will still be passed to Notepad. > > Original message > from: "Donald Marang" <donald.marang@xxxxxxxxx> > subject: [jawsscripts] Re: Modifying keypressed event > date: Fri, 12 Jun 2009 12:35:40 -0400 > >>Hi Brian, >> >>I will give you an example of what I do. I will set conditions to watch >>for >>certain keys from certain windows to perform my desired action. If I do >>not >>want the key passed to the application, I use a Return statement after the >>action to exit my KeyPressedEvent function before it has a chance to call >>the default KeyPressedEvent function. As in most system Event functions, >>the default event function you are overriding is normally called toward >>the >>end of your event function. The default KeyPressedEvent function passes >>the >>key to the application. >> >>Void Function KeyPressedEvent (Int iKeyCode, String sKeyMapName, Int >>iBraille, Int iAttachedToScript) >>If GetCurrentControlID () ==WCID_SEARCH Then >> If iKeyCode == key_ENTER Then >> PerformScript GoToResults() >> Return >> EndIf >> >> KeyPressedEvent (iKeyCode, sKeyMapName, iBraille, iAttachedToScript) >> >> If iKeyCode == key_delete >> || iKeyCode == key_Backspace Then >> ; SayMessage (OT_DEBUG, "In KeyPressedEvent: deleting") >> ; SayMessage (OT_DEBUG, "KeyPressed, char pressed = " + sKeyMapName) >> UpdateResults () >> SayResults () >> EndIf >>ElIf GetControlID (GetFirstChild (GetParent (GetCurrentWindow ()))) >>==WCID_VOICE_MAIL_PLAYER_STATUS Then >> If iKeyCode == key_SPACEBAR Then >> PerformScript PlayVoiceMail() >> EndIf >>Else ; not in search edit box or Voice Mail Player >> KeyPressedEvent (iKeyCode, sKeyMapName, iBraille, iAttachedToScript) >>EndIf >> >>EndFunction >> >>Don Marang >> >> >>----- Original Message ----- >>From: "Brian Hartgen" <brian@xxxxxxxxxxx> >>To: <jawsscripts@xxxxxxxxxxxxx> >>Sent: Friday, June 12, 2009 8:33 AM >>Subject: [jawsscripts] Modifying keypressed event >> >> >>> Hi >>> I have modified the keypressed event function in order that, when >>> particular keystrokes are used, jaws speaks information rather than >>> passing the key through to the application. This is fine, and jaws >>> speaks >>> what I want when the keys are pressed, but also jaws passses the key >>> through to the app. How can I stop the keystroke please being passed to >>> the app? >>> >>> Thank you. >>> >>> Brian Hartgen >>> >>> __________ >>> Visit and contribute to The JAWS Script Repository >>> http://jawsscripts.com >>> >>> View the list's information and change your settings at >>> //www.freelists.org/list/jawsscripts >>> >> >>__________ >>Visit and contribute to The JAWS Script Repository http://jawsscripts.com >> >>View the list's information and change your settings at >>//www.freelists.org/list/jawsscripts > > __________ > Visit and contribute to The JAWS Script Repository http://jawsscripts.com > > View the list's information and change your settings at > //www.freelists.org/list/jawsscripts > __________ Visit and contribute to The JAWS Script Repository http://jawsscripts.com View the list's information and change your settings at //www.freelists.org/list/jawsscripts