2012-10-05 3 views
1

BMI를 계산하고 레이블을 번호로 설정하려고 시도하지만 숫자가 아니라 "NaN"을 반환합니다.Flash Builder에서 숫자를 문자열로 변환하는 중

전체 코드 :

<?xml version="1.0" encoding="utf-8"?> 
    <s:View xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark" title="BMI Calculator"> 

<fx:Script> 
    <![CDATA[ 
     public var weightnum:Number; 
     public var heightnum:Number; 
     public var resultvar:Number; 
     protected function button1_clickHandler():void 
     { 
      weightnum = Number(weightvar); 
      heightnum = Number(heightvar); 
      resultvar = weightnum * 4.4/(heightnum * heightnum); 
      resultstr.text = resultvar.toString(); 
     } 
    ]]> 
</fx:Script> 

<fx:Declarations> 
    <!-- Place non-visual elements (e.g., services, value objects) here --> 
</fx:Declarations> 
<s:Label left="30" top="30" text="Your Weight (lbs)"/> 
<s:TextInput id="weightvar" restrict="0-9" x="30" y="53" width="80%"/> 
<s:Label x="30" y="104" text="Your Height (feet)"/> 
<s:TextInput id="heightvar" restrict="0-9" x="30" y="127" width="80%"/> 
<s:Button x="30" y="202" label="Calculate" click="button1_clickHandler()"/> 
<s:Label id="resultstr" x="30" y="253" text="" /> 
대신 문자열을 사용하여 주조의

답변

0

당신은 숫자에 TextInput 년대를 캐스팅하려는 (Number(weightvar);). 분명히 작동하지 않습니다.

당신이해야 할 것은 단지 다음과 같이 숫자로 TextInputtext 속성을 캐스팅하는 것입니다 : 내가 resultstr.text = resultvar.toString을 할 경우

weightnum = Number(weightvar.text); 
+0

아, 그랬어! 정말 고맙습니다! –

0

()가 number.toString를 (사용)

+0

아니 시가는 여전히 NaN를 얻을() ; –

관련 문제