here에서 BulkLoader 클래스로 이미지 파일을로드하는 슬라이드 쇼가 있습니다. 첫 번째 이미지가 완전히로드되면, 그것은 무대에 추가 할 수있는 무비 클립 컨테이너에 추가됩니다 .. 그것은 전체 화면으로 표시됩니다,하지만 버튼을 클릭 할 경우에만 :as3 버튼을 클릭 할 때까지 이미지가로드 될 때까지 대기
fullScreenButton.addEventListener(MouseEvent.CLICK, showFull);
function showFull(e:MouseEvent):void {
stage.addChild(mcSlideHolder);
...
}
는에 BulkLoader로 이미지를로드
imageLoader = new BulkLoader("imgLoader");
imageLoader.add(new URLRequest(paths[0]), {id:"slide_0});
imageLoader.get("slide_0).addEventListener(Event.COMPLETE, onFirstSlideLoaded);
imageLoader.start(1);
그리고로드 과정 : 처음부터 호출되는 별도의 기능 loadAllSlides는()
function onFirstSlideLoaded(e:Event):void
{
firstImage = imageLoader.getBitmap(e.currentTarget.id);
currentImage.addChild(firstImage);
mcSlideHolder.addChild(currentImage);
mcSlideHolder.dispatchEvent(new Event("firstImgAdd"));
}
이것은 fullScree하지 않는 한 잘 작동 이미지가 완전히로드되기 전에 nButton을 클릭하면 아무 것도 볼 수 없습니다. showFull()을 호출하는 버튼 클릭 이벤트를 얻으려면 어떻게해야합니까? 이미지가 컨테이너에로드되거나 추가 될 때까지 대기하거나 어떻게 다시 추가 할 수 있습니까? 가능한/최선의 접근 방식은 무엇입니까?
fullScreenButton을 클릭 할 때 컨테이너에 이미지를 다시 추가하는 사용자 지정 이벤트 인 "firstImgAdd"를 전달하려고했지만 try/catch 블록 또는 간단한 if 조건에도 불구하고 아무 것도 작동하지 않았습니다. 버튼을 너무 일찍 클릭하면 이미지로드가 완료된 후 컨테이너에 이미지가 추가되지 않습니다. 어떤 도움을 주셔서 감사합니다. 미리 감사드립니다.
Flash Player의 실제 전체 화면 모드에 대해 이야기하고 있습니까? 표시된 코드에서 버튼 클릭시 전체 화면으로 이동하지 않은 이유를 상상할 수 없으며로드가 완료되면 이미지가 표시됩니다. 클릭 후 전체 화면을 연기하는 방법을 묻고 있습니까? 그렇다면 그렇게 할 수 없습니다. Flash Player 보안 제한 사항에서는 호출 전체 화면으로 이동하려면 호출 스택에서 mouseEvent 또는 keyboardEvent 핸들러를 호출해야합니다. –
예, 물론 : 실제 플래시의 전체 화면 모드에 대한 것입니다. "std.displayState = StageDisplayState.FULL_SCREEN;"과 함께 전체 화면 모드를 호출 한 후 mcSlideHolder를 추가하는 코드를 작성했습니다. 그러나 여전히 성공하지 못했습니다.아니요, 전체 화면 실행을 연기하고 싶지 않습니다. 백그라운드에서로드되는 이미지가로드를 완료 할 때까지 기다렸다가 볼 수 있도록 스테이지에 추가합니다. – hajn