2012-03-07 3 views
0

Flex 및 Extend 스크립트를 사용하여 Photoshop에서 패널을 개발하고 있습니다. 이 작업을 수행하는 데 꽤 가깝지만 Flex 기술을 사용하면 jsx 파일에서 Array에 약간의 문제가 있습니다. 배열은 경고 상자에 잘 표시되지만 분리와 새 콜렉션 사이의 어떤 부분은 잘못되었습니다. 이것에 대한 도움을 주셔서 감사합니다.combobox에서 arrayCollection을 사용하여 자바 스크립트의 데이터로 채 웁니다.

은 여기 내 플렉스

protected function loadData():void { 
    var grabFolderNames:SyncRequestResult = CSXSInterface.instance.evalScript("labNames"); 
    var list:String = grabFolderNames.data; 
    var array:Array = list.split(","); 
    var arrayCollection:ArrayCollection = new ArrayCollection(); 
    arrayCollection.source = array; 
    labFolderList.dataProvider = arrayCollection; 
} 

이며, 여기에 단지 경고의 문자열을 표시 labNames() 이후 jsx

function labNames() { 
    var labs = ["Red", "Green", "Blue", "Purple", "Yellow"]; 
    alert("This function is firing" + labs); 
} 

답변

0

1) 배열 돌아가려면 labNames() 메소드를 수정해야합니다 :

function labNames() { 
    var labs = ["Red", "Green", "Blue", "Purple", "Yellow"]; 
    return labs; 
} 

2) 플렉스 당신은 JavaScript를 활성화하기 위해 allowScriptAccess="always" (또는 allowScriptAccess="sameDomain")가 객체의 HTML 래퍼에서 확인을/플렉스 커뮤니케이션. 여전히 작동하지 않는 경우로

var grabFolderNames:SyncRequestResult = CSXSInterface.instance.evalScript("labNames"); 

교체

3) :

var obj:* = CSXSInterface.instance.evalScript("labNames"); 

는 그 줄에 중단 점을 넣어 "OBJ"일부 데이터로 채워져 있는지 확인하고 여기에 결과를보고하십시오.

희망이 있습니다.

+0

감사합니다. 모든 ArrayCollection은 객체로서 다루어 져야합니다. 감사 – Bungdaddy

0

내가의 CSXSInterface을 잘 모르지만에게, 그리고 반환하지 않습니다 문자열로, grabFolderNames.data에는 포함 할 것으로 기대되는 것을 포함 할 수 없습니다. 왜 디버거로 그 값을 확인하지 않습니까?

관련 문제