Empty windows in EditFields of app.designer?
10 次查看(过去 30 天)
显示 更早的评论
I'm designing an app in which you select some input variables and its values, and after clicking the button calculate, the apps calculates and shows to the some physical values that has calcuates. (e.g: ypu enter as inputs m,g,h,a (and its values) and after clicking "calculate" it shows you F (force) and ME(mechanical energy) and their values.
So, here is are the dropemenus where the user can select the inputs he wants to enter and at the right, their values.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/494599/image.png)
The issue here is that, by default, those white EditField(Numeric) windows (on the right), has the 0 value on it, as you can see above. The issue is that I would like those windows to be empty until the user enters one value. Is this possible? I have tried clicking on each windows's Inspector panel as you can see below and changing its value 0 by just deleting it
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/494604/image.png)
But appears me this error.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/494609/image.png)
So. It's possible to have those windows empty until the user enters a value? Or is any alternative way of achieving that?
Thank you very much
0 个评论
采纳的回答
Mischa Kim
2021-1-20
ErikJon, as a workaround you could use an Edit Field (Text) instead of Edit Field (Numeric). The drawback of this workaround is that you need to convert the inputs from text to numeric (e.g. str2num).
3 个评论
Mischa Kim
2021-1-20
The best place to do this, I guess, depends on what you are trying to do. However, in general, doing the conversion in this callback makes good sense. One thing that may be helpful is to save the value as a property, either private or public. See the doc for more info. This makes the variable globally accessible and you can access this variable as
app.value
You should probably pick a more suitable name for the variable though.
更多回答(1 个)
Juan Andrés Martin
2023-8-3
Actually, you can: you just need to set the "AllowEmpty" property to "On" and then set de "Value" property to "[]"
Example:
% Create MinTipThickness2Input
app.MinTipThickness2Input = uieditfield(app.GridGearInputs, 'numeric');
app.MinTipThickness2Input.Tag = 'MinTipThickness2Input';
app.MinTipThickness2Input.AllowEmpty = 'On';
app.MinTipThickness2Input.Value = [];
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!