Cominciamo un campo dove bisogni scrivere un numero da 1 a 100:
Nel codice del campo scriviamo:
on keyDown pKey
if pKey is not a number and pKey is not "." then
beep
else
pass keyDown
end if
end keyDown
on closeField
if me > 100 then put 100 into me
if me < 1 then put 1 into me
end closeField
Notiamo che abbiamo sia un controllo alla fine, nel messaggio CloseField, che se siamo sopra o sotto i limiti corregge il valore del campo. Abbiamo, inoltre, che abbiamo l'imitato l'uso della tastiera ai numeri e il punto (messaggio KeyDown), se l'utente digita un altro tasto esce un suono ma non succede altro.
Adesso affrontiamo un altro caso, aggiungendo un campo dove l'utente deve inserire un indirizzo email.
Per verificare che l'indirizzo email sia corretto esistono tanti modi, uno è utilizzando un'espressione regolare; vediamo il codice da inserire in quest'altro campo:
on closeField
if not matchText(me, "^[A-z0-9_\-\.]+[@][A-z0-9_\-]+([.][A-z0-9_\-]+)+[A-z]$") then
answer "Not a valid email address."
select text of me
end if
end closeField
L'espressione regolare si può trovare su internet, moltissimi programmi utilizzano le espressioni regolari per controllare i testi.
Notate anche come il codice utilizzi me invece del the text of me, è un modo per far prima.
Nessun commento:
Posta un commento