Make an iucontrol edit box into a number able to be done math on.
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
"lat" should be a double and should be able to be subtracted from 90. How do I make "lat" a double and able to be done math on?
lat = uicontrol('Style','edit','String','0','position',[250 630 100 20],'Callback',(@h_lat));
uicontrol('Style','pushbutton','String','Evaluate','Position',[130,550,100,50],'Callback',{@Evaluate},'BackgroundColor','green');
function h_lat(hObject, eventdata, handles)%#ok
lat = str2double(get(hObject,'String'));
handles = guidata(hObject);
guidata(hObject, setfield(handles,'lat',lat));%#ok
function Evaluate(hObject, eventdata, handles)
handles = guidata(hObject);
lat = handles.lat;
disp(lat);
Theta=(90-lat)*pi/180;
Output:
UIControl (0) with properties:
Style: 'edit'
String: '0'
BackgroundColor: [0.9400 0.9400 0.9400]
Callback: @h_lat
Value: 0
Position: [250 630 100 20]
Units: 'pixels'
Show all properties
Undefined function 'minus' for input arguments of type 'matlab.ui.control.UIControl'.
Error in MagneticFieldFromLonLat>Evaluate (line 64)
Theta=(90-lat)*pi/180;
Error while evaluating UIControl Callback
3 commentaires
Adam
le 29 Avr 2016
lat = uicontrol('Style','edit','String...
Name that something else for a start.
Réponses (0)
Voir également
Catégories
En savoir plus sur Migrate GUIDE Apps dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!