Trouble displaying uicontrol text when it's a decimal

3 Ansichten (letzte 30 Tage)
Tanner
Tanner am 9 Dez. 2015
Kommentiert: Tanner am 9 Dez. 2015
Hello,
I'm trying to display a title for a table I'm making, but I can't seem to get it to display numbers.
Here is the part of my code:
prompt={'Enter the mach number (from 1 to 5 by intervals of 0.2):'};
title='Message';
answer=inputdlg(prompt,title, [1 30]);
M=answer{1};
MachNumber=str2num(answer{1});
f = figure('Position',[350 -100 700 930]);
m=sprintf('Mach %.1f', MachNumber);
txt = uicontrol('Style','text','FontSize', 20, 'FontWeight',... %creates title
'bold', 'Position',[110 865 110 28],'String', m); %creates title
When I run it, it will only display "Mach" but not the following number. What I found interesting was that in the command window m shows up correctly, just not in the GUI panel.
>> m
m =
Mach 1.2
How can I fix this? I also want to keep the 1 decimal number format (1.0, 1.2, 1.4, etc.)
Thank you!

Akzeptierte Antwort

TastyPastry
TastyPastry am 9 Dez. 2015
When I run your code, the number doesn't show up. This is because your uicontrol() textbox isn't wide enough. I change the 'position' property to [110 865 160 28] and it shows up as 'Mach 1.2' for me.

Weitere Antworten (0)

Kategorien

Mehr zu Migrate GUIDE Apps finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by