How to limit input formats in an edit text box?
    조회 수: 8 (최근 30일)
  
       이전 댓글 표시
    
In my GUI (programmatic one) there is an edittext box, used to enter coeeficients.
I need to check the format of input and allow only to these types:
5
0.5
1.6
5.9
0.4565132
5.0000
00000.5
Then I'll save them and call back.
댓글 수: 0
채택된 답변
  Tom
      
 2013년 6월 26일
        STR2DOUBLE catches most of those things and outputs NaN if the number isn't valid. The only thing is that it will handle commas. I used REGEXPREP to switch any commas with asterisks so str2double can't process it.
    validStr = {'5'
    '0,5'
    '1.0.6'
    '5.9'
    '0.4565132'
    '5.0000'
    '00000.5'};
    validStr = regexprep(validStr,',','****');
    str2double(validStr)
추가 답변 (2개)
  Tom
      
 2013년 6월 26일
        validStr = {'5'
'0.5'
'1.6'
'5.9'
'0.4565132'
'5.0000'
'00000.5'};
if any(strcmp(get(hEditBox,'String'),validStr))
    %code
else
    warndlg('Edit box string is not valid.')
end
  Sean de Wolski
      
      
 2013년 6월 26일
        Why not just use a popupmenu?
uicontrol('style','popupmenu','string',{'0.5','3.14','1.6'})
참고 항목
카테고리
				Help Center 및 File Exchange에서 Cell Arrays에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!