How to clear the value from a numeric or text edit field on Matlab App Designer?

119 views (last 30 days)
As you can see in the following image, I have an app.editfield (numeric) called app.editfieldN and another app.editfield (text) called app.editfieldT, as well as a refresh button called app.Button.
The point is that, when I run the app, and when values are introduced in those editfields (as you can see in the following image), I would like to reset/clear/delet those values when clicking on the refresh button. How can I achieve that?
I have tried that whenever Refresh button is clicked:
app.editfieldN.Value=='0';
app.editfieldT.Value==' ';
It does "clear" the editfields but It doesn't seems very professional and I think that it distorts following values that will be entered in the future.
So, there is any professional/right way of clearing/deleting does values appart from mine?

Accepted Answer

Cris LaPierre
Cris LaPierre on 8 Jan 2021
Edited: Cris LaPierre on 8 Jan 2021
There is a syntax error in your code. You assign values with a single equals sign. You compare values with two equal signs. Also, a numeric edit filed should be assigned a numeric value. You are assigning it a text value because zero is in quotes.
This is the approach i would probably take given what I know about your app. My code would be
app.editfieldN.Value=0;
app.editfieldT.Value='';
  2 Comments
KEE OOI TING
KEE OOI TING on 4 Apr 2023
Is there any way to clear all editfield? My app is to receive user input for a prediction model, but I want to let them clear the boxes every time they want to start over.
Cris LaPierre
Cris LaPierre on 4 Apr 2023
Edited: Cris LaPierre on 4 Apr 2023
There is no single command that will clear all components. You will need to write code for each component you want to clear.

Sign in to comment.

More Answers (2)

Mario Malic
Mario Malic on 8 Jan 2021
Edited: Mario Malic on 8 Jan 2021
Hello,
All looks good, except double equal marks, you can create a (helper) function that would do that
function ClearFields(app)
app.editfieldN.Value=0;
app.editfieldT.Value='';
end
In the button callback you would just call the function
function ButtonPushedFcn(source, event)
ClearFields(app)
end

sing
sing on 20 Apr 2022
Edited: sing on 20 Apr 2022
A workoaround solution is to set the color of the text equal to the box's background (typically white).
In your case:
app.editfieldN.FontColor=[1 1 1]

Categories

Find more on Create System Objects in Help Center and File Exchange

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!