[HELP] required for exception handling during user input

Hi need help!
I need to capture user input using getkey(). However the user is only allowed to enter values between 1 and 9. If user presses something else it should wait (can give an error message too) for the user to press a valid key (1-9).
Code please.
Thanks in anticipation.

Respuestas (2)

what is getkey()?
docsearch getkey
doesn't return any results. If you want the keypressfcn of a figure to perform this test, here is a small demo:
All in one file ans_keypressexample.m
function ans_keypressexample
figure('keypressfcn',@clicked); %make a figure
function clicked(~,evt)
key = str2double(evt.Key); %get the key
if isnan(key)||key==0 %is it between 1 and 9?
error('Booo!'); %no :(
else
disp('yay!!');
end

1 comentario

GETKEY() waits for a keypress and returns the ASCII code, but dont think this is a standard function in matlab. It has been added separately to our matlab.
Thanks. I will try the above code.
Walter Roberson
Walter Roberson el 12 de En. de 2012
As you are using a File Exchange contribution, edit the source for your own purposes. http://www.mathworks.com/matlabcentral/fileexchange/7465-getkey

La pregunta está cerrada.

Etiquetas

Preguntada:

el 12 de En. de 2012

Cerrada:

el 20 de Ag. de 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by