2013-04-12 1 views
0

그래서 키보드/아래 스피너 클릭을 트리거하도록 요청했지만, 이벤트를 전달하기 위해 어디에서스파크 회 트리거를 클릭

이 난 시도 것입니다 ... 찾을 수 없습니다 :

var item:Object=spinner.skin; 
item.incrementButton.dispatchEvent(new MouseEvent(MouseEvent.MOUSE_DOWN)); 
item.incrementButton.dispatchEvent(new MouseEvent(MouseEvent.MOUSE_UP)); 
item.incrementButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); 
item.decrementButton.dispatchEvent(new MouseEvent(MouseEvent.MOUSE_DOWN)); 
item.decrementButton.dispatchEvent(new MouseEvent(MouseEvent.MOUSE_UP)); 
item.decrementButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); 

아이디어가 있으십니까?

편집 : DataGrid 행 스와핑에 대한 바로 가기를 만들어야했습니다.

if(e.keyCode==Keyboard.NUMPAD_ADD){ 
    spnOrder.value++; 
    spnOrder.incrementButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); 
} 
else if(e.keyCode==Keyboard.NUMPAD_SUBTRACT){ 
    spnOrder.value--; 
    spnOrder.decrementButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); 
} 

스피너 클릭 내게 깨끗한 용액 같았 파견 스피너의 결과 값과 데이터 그리드 행 스왑 범용 처리기를 갖는다.

EDIT2 :

클릭 처리기 :

private function spnOrder_clickHandler(e:MouseEvent):void{ 
    var toIndex:int=spnOrder.value; 
    var index:int=grid.selectedIndex; 
    if(toIndex>-1 && toIndex<list.length && index>-1 && toIndex!=index){ 
     if(toIndex<index) 
      list.addItemAt(list.removeItemAt(index-1),index) 
     else 
      list.addItemAt(list.removeItemAt(index+1),index); 
     grid.setFocus(); 
     grid.setSelectedIndex(toIndex); 
    } 
    else{ 
     grid.setFocus(); 
     spnOrder.value=index; 
    } 
} 

회 전자 :

<s:Spinner 
    id="spnOrder" 
    value="{grid.selectedIndex}" 
    skinClass="skins.SpinnerInvertedSkin" 
    click="spnOrder_clickHandler(event)" /> 
+1

값을 증가 및 감소시킬 수없는 이유는 무엇입니까? –

+0

나는 이미 만들어진 코드를 어디서나 복사/붙여 넣기하는 대신 재사용하려고합니다. 값을 변경하면 클릭 핸들러가 트리거되지 않습니다. – Ziul

+0

클릭 핸들러에 관여해서는 안됩니다! –

답변

1

피부에 incrementButton/decrementButton를 참조하면 안됩니다. 구성 요소 클래스에서 그렇게하십시오.

이벤트가 적절하게 전달되었지만 이벤트 리스너가 스킨 인스턴스에서 수신 대기하고 있지 않습니다. 기본 구성 요소는 변경되지 않습니다.

+0

회 전자 버튼이 이러한 이벤트 중 하나와 유사한 모양으로 마우스를 바꾼 것처럼 보이지만 여전히 클릭 핸들러에 도달하지 못함 =/ – Ziul

+1

아, 작동 중, nvm, 항상 생명의 보호기입니다 @flextras =) – Ziul

+0

실제로 누군가가 쥐의 유지할 수없는 코드의 방향으로 그들을 격려하는 제안을 그들에게 줄 수 있는지 확신하지 못한다. 제프리, 아무런 공격도하지 않습니다. –

관련 문제