2011-09-08 2 views

답변

2

EDIT : 전에 게시 한 모든 것을 무시하십시오.

스파크 버튼에 keyDown 이벤트를 사용하고 KeyboardEvent를 사용하여 이벤트 핸들러를 만들 수 있습니다.

 <s:Button label="Submit" keyDown="enter_pressed(event)" id="submit" click="submit_clickHandler(event)"/> 

     protected function enter_pressed(event:KeyboardEvent):void { 
      if(event.charCode == Keyboard.ENTER){ 
       submit.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); 
      } 
     } 
+0

Thanks Mike - could 버튼을 클릭 할 때 입력 내용이 어떻게 표시되는지 설명합니다. 어쩌면 약간 불확실한 것 같습니다. 포커스가 버튼에있을 때 사용자가 엔터를 누르면 버튼 클릭이 트리거됩니다. –

+0

오! 나는 당신의 질문을 잘못 읽은 것이 유감입니다. 버튼에 입력을 처리하고 거기에서 클릭 이벤트를 보내려고합니다. 나는 그걸 더 자세히보아야 할 것입니다. – Mike

+0

아마도 keyDown 이벤트를 살펴보고 거기에있는 핸들러를 확인하십시오. – Mike

2

감사합니다 (TextInput 구성 필드에서 예를 들어 '입력'이벤트가있다) 사용자가 버튼에 초점을 맞추고 키보드 입력 키와 아무 관련이없는 경우 내가 잘못 본 것이 아니라면 Flash에서 버튼을 활성화하기위한 기본 키는 스페이스 바입니다. 다음과 같이하면 Enter를 사용할 수 있습니다.

myButton.addEventListener(KeyboardEvent.KEY_DOWN, onMyButtonKeyDown); 

private function onMyButtonKeyDown(event:KeyboardEvent):void 
{ 
    //simulate click if enter pressed 
    if(event.keyCode == Keyboard.ENTER) 
     myButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); 
} 
+0

안녕하세요. 답장을 보내 주셔서 감사합니다. 스파크 버튼에는 선택 요소가 없습니다. –

+0

문제 없슴. 귀하의 제안에 대한 작업 코드 샘플을 게시 할 수 있다면 그것을 시도해 보겠습니다. –

+0

Rollbacked 대답과 .selected 부분, 일부 와이어는 내가 썼을 때 건드렸습니다. 포커스가 버튼에 집중되어 있다면 이벤트가 발생합니다. – Exort

관련 문제