[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.

Antworten (2)

Sean de Wolski
Sean de Wolski am 12 Jan. 2012
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 Kommentar

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 am 12 Jan. 2012

0 Stimmen

As you are using a File Exchange contribution, edit the source for your own purposes. http://www.mathworks.com/matlabcentral/fileexchange/7465-getkey

Diese Frage ist geschlossen.

Gefragt:

am 12 Jan. 2012

Geschlossen:

am 20 Aug. 2021

Community Treasure Hunt

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

Start Hunting!

Translated by