2012-10-14 4 views
-1
//main.fla 
    var skill1 = addChild(girl2.skill1); 

girl2.as에서 skill1 var에 액세스하려고하지만 작동하지 않았습니다.
오류가 표시되었습니다.
1119 : 정적 유형 Icons.chars : girl2를 사용하는 참조를 통해 정의되지 않은 속성 skill1에 대한 액세스가 가능합니다. 정적/전역 변수 문제

//girl2.as 
    package Icons.chars 
    { 

import flash.display.Loader; 
import flash.display.MovieClip; 
import flash.net.URLRequest; 

    public class girl2 extends charsel { 

public static var skill1:Loader, url1:URLRequest; 

public function girl2() { 
    skill1 = new Loader(); 
    url1 = new URLRequest("skills/nami/skill4.png") 
     skill1.load(url1); 

나는 charsel.as에서 시도하고 내가 재생기에 액세스하려고하고 일
//charsel.as 
package Icons.chars 
{ 

import flash.geom.Point; 
import flash.display.*; 
import flash.events.MouseEvent; 

public class charsel extends MovieClip { 

protected var originalPosition:Point; 
public static var player1:MovieClip, player2:MovieClip, player3:MovieClip; 

을했다.

답변

0

이 경우 정적 수정자를 사용해야하는 이유가 확실하지 않습니다. 스킬 1을 정적으로 선언했다하더라도, 실제로 생성자에서 girl2 클래스의 인스턴스를 생성 할 때만 사용할 수 있습니다 (클래스 이름을 대문자로 지정해야하며, 그래서 이것은 Girl2 여야합니다.)

그래서, 내가 그것에 대해 어떤 특별한 이유가있는 경우, skill1 변수의 인스턴스를 정적 ​​initialiser를 사용, 공용 변수에 대한 모든 정적 수정을 제거하거나 것 중 하나

public class girl2 extends charsel { 

public static var skill1:Loader, url1:URLRequest; 

{ 
skill1 = new Loader(); 
skill1.addEventListener(...); // event handlers should be static as well 
skill1.load(...); 
} 

public function girl2() { 
+0

내가 유, 1119 말을했다 : 정적 유형 Icons.chars : girl2를 사용하는 참조를 통해 정의되지 않은 속성 skill1에 대한 액세스. – user1732492