2011-09-22 5 views
0

사용자는 Excel 스프레드 시트의 내용을 내 Flex 응용 프로그램의 표에 붙여 넣을 수 있어야합니다.편집 할 수없는 텍스트 붙여 넣기 대상

내가 텍스트에게 사용자 페이스트를 구문 분석 TextAreachange 이벤트 처리기를 사용하여이 구현 한 - 줄 바꿈과 탭으로 분리를 위로 - 그리드에 바인딩 된 ArrayCollection에 추가.

그러나 사용자가 TextArea에 수동으로 텍스트를 입력 할 수는 없습니다. 어떻게 그렇게 할 수 없습니까?

또는 : IFocusManagerComponent을 구현하는 자체 구성 요소를 만드는 것이 더 합리적입니까? 사용하기 전에

+0

그것은 가장 좋은 것입니다 TextArea의 텍스트가 무효 인 경우는 에러 –

답변

0

[업데이트] 조금 지저분한, 제발 정리 코드 : 당신이 어떤 보여주는`Validator`이 있다면

<fx:Script> 
    <![CDATA[ 

     protected function keyDownEvent(e:KeyboardEvent):void 
     { 
      e.preventDefault(); 
      switch(e.keyCode) 
      { 
       case Keyboard.V: 
        if (e.ctrlKey) 
        { 
         ta.text += "Some dummy " + "\n" + 
          "text pasted in this text area"; 
         ta.text += "\n[Keyboard Used to paste]"; 
        } 
        break; 
       default: 
        e.preventDefault(); 
      } 
     } 

     protected function onCreationComplete(event:Event):void 
     { 
      ta.addEventListener(KeyboardEvent.KEY_DOWN, keyDownEvent); 
     } 

    ]]> 
</fx:Script> 

<s:Label text="Press CTRL[V] to see the action"/> 
<s:TextArea id="ta"/> 

관련 문제