2012-05-04 7 views
0

서로 종속적 인 텍스트 필드를 갖고 싶습니다. 예를 들어 각 주파수 (ω)와 일반 주파수 (f)의 두 가지 입력 텍스트 필드 인 ω = 2πf가 있습니다. 하나를 변경하면 다른 변경됩니다. 어떻게해야합니까? 두 번째 것은 텍스트 필드가 비어 있는지 어떻게 확인할 수 있습니까?종속 텍스트 필드

if (field.text=="")... // doesn't work 
+0

시도 field.text.lenght> 0 확인하려면 이벤트 리스너를 추가하는 것입니다 두 텍스트 필드 사이의 의존성은 무엇입니까? – Badr

답변

2

이렇게하는 데는 두 가지 방법이 있습니다. 각 프레임마다 현재 필드의 값을 확인하고 변경된 내용이 있는지를 확인하는 일종의 업데이트 함수를 사용할 수 있습니다. (내 생각에)

private var tf1 : TextField = new TextField(); 
private var tf2 : TextField = new TextField(); 
private var tf1LastVal : String = ""; 
private var tf2LastVal : String = ""; 

public function update() : void 
{ 
    if(tf1.text != tf1LastVal) 
    { 
     tf2.text = //put your logic here 
     tf1LastVal = tf1.text; 
    } 
    else if(tf2.text != tf2LastVal) 
    { 
     tf1.text = //put your logic here 
     tf2LastVal = tf2.text; 
    } 
} 

다른, 더 나은 방법이 일이 비어 있는지 확인하도록 TextField의

//add this where you construct your TextFields 
tf1.addEventListener(Event.CHANGE, onTf1Change); 
tf2.addEventListener(Event.CHANGE, onTf2Change); 
//end 

private function onTf1Change(e : Event) : void 
{ 
    tf2.text = //your logic here; 
} 

private function onTf2Change(e : Event) : void 
{ 
    tf1.text = //your logic here; 
}