Entering a value for 'String'
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
When 'String','' and enter the value in manually it works. When 'String','100' it does not.
vi = uicontrol('Style','edit','String','100','position',[10 630 100 20],'Callback',(@h_vi));
How do I correct this?
0 comentarios
Respuestas (4)
Image Analyst
el 10 de Sept. de 2015
630 is too big - it's off screen, try [10 30 100 20] instead.
0 comentarios
Image Analyst
el 10 de Sept. de 2015
You can't raise and edit field itself to a power. You have to get the number out of the edit field first, then raise it to a power.
% Create an edit field. The "handle" to it is called hEdit.
hEdit = uicontrol('Style','edit','String','100','position',[10 30 100 20],'Callback',(@h_vi));
% Get string out of the edit field and then convert it to a double variable.
vi = str2double(get(hEdit, 'String'));
% Now do the mathematical equation.
maxh = vi^2/(2*9.81)*(sin(angle*pi/180))^2;
Of course vi will be 100 since you gave no time for the user to change it before you pulled out the 100 and used it.
1 comentario
Image Analyst
el 11 de Sept. de 2015
By the way, you can use sind(angle) instead of sin(angle*pi/180).
Ver también
Categorías
Más información sobre Migrate GUIDE Apps en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!