On Dec 9, 2006, at 6:45 PM, Charles Szasz wrote:

I have been working on my project since June. I almost done but I ran into an unexpected problem. When the user enters a raw score of two digits in a field and presses the Tab key, the cursor goes to the next edit field as it is supposed to do. When the user presses the Return key after entry of a two digit number, the number is pushed off to the left and the cursor remains in the field. This happens despite the autotab being set to true and no list behavior is checked.

Here is a sample script from my project:


ON keyDown whichKey
  IF whichKey is a number THEN
    IF the selection is not empty THEN delete the selection
    IF the length of me < 2 THEN
      pass keyDown
    ELSE
      answer information "Numbers cannot be longer than two digits."
    END IF
  END IF
END keyDown

ON closefield
    IF field "yrFld" > 4 AND field "yrFld" < 12 AND fld "msFld" > 62 THEN
answer information "The total raw score is incorrect for a age of " && fld "yrFld" &" years!"
        put empty into me
        focus ON me
    ELSE
        IF field "yrFld" > 11 AND field "yrFld" < 20 AND fld "msFld" > 63 THEN
answer information "The total raw score is incorrect for a age of " && fld "yrFld" &" years!"
            put empty into me
            focus ON me
        ELSE
IF field "yrFld" > 19 AND field "yrFld" <60 AND fld "msFld" > 57 THEN answer information "The total raw score is incorrect for a age of " && fld "yrFld" &" years!"
                put empty into me
                focus ON me
            END IF
        END IF
    END IF
END closefield


The first script limits the input of 2 digit numbers only. The second script is flagging the possibility of an incorrect raw score being entered for certain ages. Some of the fields have a raw score limit based on the age of the child. For this example, children aged 5 to 11 years, the total raw score can be only 62. for students in the age range of 12 to 19, the total is 63 and for adults (20 to 59 years) the total is 57.

The questions remains is why does the Return key does not act as a Tab key?

Charles Szasz
[EMAIL PROTECTED]


Charles,

If you want to trap return you need 4 handlers in your field

on returnKey
on enterKey
on returnInField
on enterInField

They complent each other. The simplest is for them to call a common handler to simulate tabbing to the next field.

I also wonder whether you really, really need the keyDown handler if you do input verification in closefield anyway. Just add a check for a valid number there before other checks.

Robert
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to