GUI help
    5 次查看(过去 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 中查找有关 Characters and Strings 的更多信息
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


