GUI help
1 次查看(过去 30 天)
显示 更早的评论
% In my GUI I am giving value to T e.g 370 as input , but on debug mode when I am trying to check T as input this gives me 1X3 char instead of 1, this causing error in my answer giving three values what can I add to make the input as single char
e.g in my code
T = get(handles.Red_Temp,'string'); where 'Red_Temp' is input string
0 个评论
采纳的回答
Jan
2012-4-3
370 cannot be represented as single char.
'Red_Temp' cannot be the input string, because this is a field in a struct. handles.Red_Temp is the handle of an edit uicontrol. T is the string. This string has 3 characters if it is '370'. To convert is to a number use sscanf:
D = sscanf(T, '%g');
2 个评论
Jan
2012-4-3
I do not know your code, therefore I cannot suggest a valid position.
SSCANF is an alternative to STR2DOUBLE, so you do not need both.
更多回答(2 个)
Matt Kindig
2012-4-3
Are you saying that your GUI requires a double input and not a char input? If so, you can just convert the string to a double, like
T = str2double(get(handles.Red_Temp,'string'))
This will be a 1x1 double matrix.
0 个评论
Otis
2012-4-3
"get(handles.Red_Temp, 'string')" will return a string. If you expect that string to be a number, e.g. '370', then use the function str2double, which will return the actual number that the string represents:
T = str2double(get(handles.Red_Temp,'string'));
Note: If the entered string does not represent an actual number, str2double will return NaN.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Whos 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!