2011-09-27 2 views
1

메인 페이지가있는 계층 구조를 만들었습니다. add 요소를 사용하여 유형 그룹의 구성 요소 mxml을 첨부했습니다. 클릭하면 메인 페이지에 하나의 버튼이 있습니다. 두 개의 버튼과 함께 해당 그룹 유형의 mxml 구성 요소에 유형 그룹의 하위 항목을 추가해야합니다. 이제 버튼 중 하나를 사용하여 다른 컴포넌트 mxml 유형 그룹을 첨부하고 있습니다. 문제는 심지어 그들은 첫 번째 그룹 구성 요소 mxml의 자식 그룹을 초과 할 수 있습니다 중복됩니다. 이 마우스 이벤트가 발생하는 것을 어떻게 막을 수 있습니까?플렉스에서 마우스 클릭 이벤트가 발생하는 것을 멈추는 방법

+0

계층 구조를 설명하는 데 mxml 코드를 사용하는 것이 좋습니다. 어쨌든, 나는 당신의 질문을 가지고, eventhandler 함수에서 이벤트를 처리 한 후 event.stopImmediatePropagation()을 사용할 수 있습니다. –

+0

은 @ M.D와 유사합니다. 일부 코드는 매우 도움이 될 것이라고 말했다. –

+0

일부 코드 게시, 원하는 것을 정확히 알지 못함, mouseChildren = false 및 mouseEnabled = false를 추가하면 마우스 이벤트가 생성되지 않습니다. –

답변

1

이러한 종류의 이벤트는 일반적으로 상위 구성 요소에 부딪칩니다. 당신은 전체 구성 요소를 사용할 수 없게됩니다,

활성화로 설정하여
private function onMouseClicked(event: MouseEvent): void { 
    event.stopPropagation(); 
    ... do whatever you wanted when smth was clicked ... 
} 
1

이의 mouseChildren가 false로 mouseEnabled 그것은 아이들의 : 당신은 더 전파를 중지하려면 마우스 클릭 이벤트 리스너에 다음 코드를 사용하여 시도 할 수 있습니다. 아래 예 :

private var myPreviousGroupComponent:Group = null; 
function addNewGroup():void 
{ 
    if(myPreviousGroupComponent != null) 
    { 
     myPreviousGroupComponent.enabled = false; 
     myPreviousGroupComponent.mouseChildren = false; 
     myPreviousGroupComponent.mouseEnabled = false; 
    } 

    var newGroup:Group = new Group(); 
    addElement(newGroup); 

    myPreviousGroupComponent = newGroup; 
} 
관련 문제