2011-09-05 3 views
0

스테이지에 SimpleButton이 있으며 click 이벤트에서 removeChild()을 사용하여 제거합니다. 버튼을 다시 추가하면 예상대로 "위로"상태가 아니라 "오버"상태로 다시 추가됩니다.removeChild()로 제거한 버튼이 상태에서 다시 추가됩니다.

저는 버그라고 생각합니다. 그래서 JIRA : http://bugs.adobe.com/jira/browse/SDK-31445을 제출했습니다. 제 경험은 비슷한 경험이 있다면, 어떻게 수정해야할까요?

내가 무엇을 시도했다 :

  • 대신 작동 visible = false를 사용하여,하지만 난 팝업/화면을 많이 가질 수에 일하고 있어요 게임으로 모두 무대 떨어져 그것을 제거하기 원합니다.
  • 수동으로 mouse_out 이벤트를 발생시키는 것은 작동하지 않으며 어쨌든 mouse_out 이벤트가 예상대로 실행됩니다 (아마도 업 상태로 재설정하기 전에 스테이지에 추가되었는지 확인한 후 아니, 그다음 일찍 종료)
  • 스테이지 포커스 재설정 - 스테이지 포커스에 문제가 있다고 생각했습니다. 버튼이 숨겨 졌을 때 포커스를 잃어 가고 있었지만 재설정해도 문제가 해결되지 않았습니다.
  • 내가 숨겨 졌을 때 일시적으로 이상 상태를 바꿀 수는 있지만 추한 수정처럼 보입니다.
+0

코드를 게시 할 수 있습니까? 왜냐하면 나는 버그가 아니기 때문에 코드 내부에서 논리적으로 실수를 범하기 때문이다. –

+0

jira에 대한 링크를 따라 가면 프로젝트와 코드가 포함 된 zip이 있습니다. – divillysausages

+0

hmm, 방금 살펴 보았습니다. 저도 버그 같아요. Flash Player 또는 FireFox에서 버그를 재생하지 못했음을 알았습니다. (IE와 Chrome에서만 사용 가능). 어쩌면 당신 만의 커스텀 버튼을 만들어야할까요? –

답변

1

나는 하나의 버튼을 제거하고 별도의 스프라이트에 Mouse up 이벤트에 대한 응답으로 다른 것을 추가하는 데에도이 문제를 겪어왔다. IE는 그 당시 버튼 중 하나가 아니고, 그러나 첫 번째 버튼 (문제가있는 버튼)이 이전에 제거되었을 때 마우스가 실제로 위에 있었으므로 mouseOut 이벤트를받지 못해 오버 상태로 유지되었습니다. 가시성을 사용하여 내 필요에 맞게 작동하지만 대체 답변은 표시 목록에 추가하기 전에 단추의 새 인스턴스로 바꾸는 것입니다.

+0

답변을 주셔서 감사합니다. 단추에 발생하는 mouseOut 이벤트가 있지만 (jira에서 코드를 다운로드하면 볼 수 있습니다), 이것이 내가 버그라고 생각하는 이유입니다. 새로운 인스턴스로 바꾸는 것은 나쁜 생각이 아니지만, 필자는 반드시 새로운 객체를 만드는 것을 좋아하지 않으며, 플래시를 사용하여 아트를 만들 때 (즉, 아티스트가 GUI를 당신을 위해.이 경우, 그것은 부모 GUI를 내보낼 설정 버튼 자체) – divillysausages