ArrowKey Handler problem
Haroldo Mauro Jr.
hmauro at hmauro.com
Sun Apr 18 09:11:00 EDT 2010
At 14:44 +0300 18/04/10, Richmond Mathewson wrote:
> On 18/04/2010 14:29, Haroldo Mauro Jr. wrote:
>>Hi everybody, I just joined this list. I used Hypercard for many years, since I got my first Mac in 1991. Then, some years ago swiched to Supercard, which I've been using a lot. I've had Revolution Studio for over a year but only now am trying to use it more steadly. So, here's what I need help with right now.
>>In a converted Hypercard stack, an arrowKey handler in the stack script is not behaving as expected. So I checked the Revolution dictionary and found this example below, which I tested on my stack and it didn't work, just the same:
>>
>>(example from Rev dictionary)
>>on arrowKey theKey -- make Up arrow go to the first card
>> if theKey is "up" then go to card 1
>> else pass arrowKey
>>end arrowKey
>
>Just tried that script: NO; doesnt work: documentation is misleading.
>>Instead of going to card 1 it kept going to the next card each time I pressed the up arrow key, and after the last card the stack just closed.
>>
>>Here's my original handler, from the Hypercard stack script, which doens't work:
>>(handler is in stack script)
>>on arrowKey whichKey
>> if whichKey is "right" then
>> if the optionKey is down then
>> go first card of next bg
>> else
>> go next card of this bg
>> end if
>> end if
>> if whichKey is "left" then
>> if the optionKey is down then
>> go last card of previous bg
>> else
>> go previous card of this bg
>> end if
>> end if
>>end arrowKey
>>
>>Any help would be appreciated. Thank you.
>>Harold
>
>My experience favours rawKeyDown:
>
>on rawKeyDown RAWK
> if RAWK is 65363 then go to card 1
>else pass rawKeyDown
>end rawKeyDown
Thank you Richmond. Something very weird happened when I tested your script. It made for an erratic navigation. I was on card 60 when I pressed the up key, and these are the cards that showed with each consecutive press of the up arrow: 59, 58, 58 again, 59, 60, 61, 60, 59, 58, 59, 59 again, 58, 57, 56, 57, 58, 65, 64, 63, 62, etc...
I tested both your script and mine in a different stack. Same results.
Haroldo
More information about the use-livecode
mailing list