notification in case missing answer
2 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
更多回答(1 个)
Jan
2013-4-24
编辑:Jan
2013-4-24
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.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Environment and Settings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!