notification in case missing answer

2 views (last 30 days)
hi everyone, i have an other question on interaction between time and user: i want my code to give a message to user if he takes too much time to answer the question. ps.: this message has to be sent even if the user dosn't answer the question.
  2 Comments
Walter Roberson
Walter Roberson on 23 Apr 2013
What method are you using to interact with the user?
Nicolò
Nicolò on 24 Apr 2013
Edited: Nicolò on 24 Apr 2013
something like this
%EXAMPLE
%request name
Name = input('insert your name','s');
%if the answer not arrive in 10sec
fprintf ('sorry you had took much time');
end

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 24 Apr 2013

More Answers (1)

Jan
Jan on 24 Apr 2013
Edited: Jan on 24 Apr 2013
initial = now;
Name = input('insert your name','s');
if now - initial > 10 % seconds
fprintf('sorry you had took much time\n');
end
Perhaps a native speaker could give an advice: "Sorry, you have taken too much time" ???
[EDITED] Oh, perhaps you are looking for a time-out, which stops the waiting for the user input? This is not possible in the Matlab-level with the INPUT command. Even with a GUI like INPUTDLG this is not easy, because writing a message to an UICONTROL will collide with deleteing the message by a TIMER.
With using Java you can create a TIMER object, which emulates pressing the RETURN key after a certain time using the "Java robot" (use this term to search on undocumentedmatlab.com). This can stop INPUT automatically, but you need an additional flag to distinguish this pseudo-keypress from the real return key.
This method would have a dangerous side-effect: When a dialog window is opened e.g. from a long copy process from the operating system, pressing RETURN automatically could cause a desaster. Therefore I will not post the corresponding code.

Categories

Find more on Environment and Settings in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!