prompt a GUI user to enter different values

1 次查看(过去 30 天)
I am using App Designer to write a GUI wrapper for an existing app. The app should load some data based on the user input. If the user input is invalid, how can I make the user try again? For example, the user entered an end time that is not after the previously entered starting time. Or as a simpler example, the user entered a string that is not one of the valid responses.

采纳的回答

Adam Danz
Adam Danz 2023-4-19
Put your dialog in a while-loop that exits when the input conditions are met and regenerates the dialog if the conditions are not met.
Here is an example using input() which generates a prompt in the command window rather than generating a dialog but it would follow the same general process (dialogs are much better than input()).
  4 个评论
Rich006
Rich006 2023-4-20
The whole purpose of the app is to get input from the user (start date, start time, end date, and end time plus three other values), and then call a function with those values as arguments. Maybe I don't even want a full-on App, but just a few input dialogs wrapped in a script with validation. I was thinking I wanted one dialog for all seven inputs, with validation happening within the dialog, but that's probably not the best approach. This should be as simple as possible, but no simpler. :-)
Adam Danz
Adam Danz 2023-4-20
I see. That makes sense. You could create a dialog or an app, inputdlg might come in handy.
Let's say you're using inputdlg. Create it within a while-loop that creates the dialog, validates the users's input, and either leaves the loop or continues for another iteration.
It will look something like this.
inputsGood = false;
while ~inputsGood
response = inputdlg(___);
inputsGood = myValidation();
end

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Develop Apps Using App Designer 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by