웹 페이지에 표준 슬라이드 쇼 플래시 헤더를 작성하고 있습니다.AS3의 타임 라인에서 문서 클래스의 속성에 액세스하려면 어떻게해야합니까?
은 세 가지 주요 부분이 있습니다
- 문서 클래스
- 일부 연결 타임 라인 코드 프로젝트로 사용되는 슬라이드 쇼 클래스
- 컨트롤러 클래스.
슬라이드 쇼 클래스에는 모든 기능이 있으므로 Document 클래스를 사용하여 슬라이드 쇼의 새 인스턴스를 만들고 슬라이드 쇼 인스턴스라는 참조를 유지하는 slideshow라는 속성 변수를 유지합니다.
import flash.display.MovieClip;
import flash.events.Event;
public class Header extends MovieClip
{
public var slideshow:Slideshow;
public function CSYC_Header()
{
var picturesURL:String = "images/pictures.xml";
var picturesURLFVar:String = root.loaderInfo.parameters.pictures;
picturesURL = picturesURLFVar ? picturesURLFVar : picturesURL;
slideshow = new Slideshow(picturesURL, Slideshow.FADE);
slideshow.init();
addChild(slideshow);
}
public function hello():void{trace("Hello");}
}
내 다음 단계는 지금 slidshow.play() /를 호출, 자신의 클릭 이벤트를 몇 가지 놀이를 그리고 버튼을 중지 한 다음 링크의 Adobe Flash Professional을 사용하는 것입니다. 일시 정지(). 이 코드는 타임 라인에 배치되어 나를에도 불구하고
import flash.events.MouseEvent;
pause_control_btn.addEventListener(MouseEvent.CLICK, pauseClicked);
play_control_btn.addEventListener(MouseEvent.CLICK, playClicked);
addChild(pause_control_btn);
addChild(play_control_btn);
function pauseClicked(e:MouseEvent):void
{
//the play and pause buttons are on the stage and have the following names as
// thier instance names: pause_control_btn, play_control_btn
pause_control_btn.alpha = 0;
play_control_btn.alpha = 0.37;
slideshow.pause();
}
function playClicked(e:MouseEvent):void
{
pause_control_btn.alpha = 0.37;
play_control_btn.alpha = 0;
slideshow.play();
}
내가 슬라이드 쇼를 말할 때, 나는 예를 들어, 다음과 같은 오류없이 속성을 호출 할 수 없습니다 타임 라인에서 문서 클래스에있는 일반 메소드를 호출 할 수있는 .play() :
1061: Call to a possibly undefined method play through a reference with static type com.example.test:Slideshow.
그래서 내가 뭔가를 분명 실종, 또는 내 문서 클래스에 내 문서 클래스에서 객체를 호출하는 이벤트를 연결 할 때마다하는 방법을해야 할 것이다?
위대한 포인트! 어제 밤에 잠을 잤고, 슬라이드 쇼 수업에서 오류가 발생했기 때문에 지금은 어리 석습니다. 결론적으로, 문서 클래스의 모든 내용과 문서 클래스의 타임 라인에있는 모든 것을 속성과 메서드처럼 액세스 할 수 있습니다.이 예제의 경우 타임 라인에서 slideshow.play()를 호출 할 수 있습니다 (필요한 메소드 추가 변경을 저장하는 것을 잊지 않는 경우 :)) 및 문서 클래스에서 pause_control_btn.addEventListener (MouseEvent.CLICK, pauseClicked)를 호출 할 수 있습니다. 도 마찬가지입니다. 모든 것이 작동합니다! – GitNick
아, 그럼 그게 문제 였어요;) 내가해야했던 것보다 훨씬 '파일을 저장하지 못했습니다'문제가있었습니다! 다행스럽게도 다행스럽게도 타임 라인에서 문서 클래스의 내용에 액세스하는 것이 가능하다는 점을 잘 알고 있습니다. 정보 주셔서 감사합니다! – debu