안녕하세요, 저는 약간의 액션 스크립트와 약간 혼동합니다. 내 GUI의 경우 컴퓨팅이 수행되는 동안 네 가지 기능을 작성했습니다. showMessage ("텍스트로드 중 ..."), disableButtons(), clearMessage() 및 enableButtons()입니다. 그들은 프로그램 전체에서 훌륭하게 작동합니다. ShowMessage는로드 메시지를 표시하고 disableButtons는 버튼을 비활성화하여 아무도 아무 것도 클릭 할 수 없도록하며 clearMessage는 작업이 완료되면로드 메시지를 지우고 enableButtons는 다시 모든 메시지를 켭니다.왜 내 프로그램이 일부 기능을 건너 뛰는 것 같지 않습니까?
어떤 이유인지, 나에게 문제를 일으키는 버튼 클릭 핸들러가 하나 있는데 그 이유를 모르겠습니다. 나는 그것과 비슷한 다른 사람들처럼 설정했는데 (모두 작동),이 메시지는 메시지를 표시하지 않거나 버튼을 닫지 않습니다. 여기
private function createRbeAC():void
{
rbeAC.removeAll();
hiddenRBELayers.removeAll();
var rbeIDs:Array = rbeConfigList.getKeySet();
for each (var rbeID:int in rbeIDs)
{
var rbeConfig:Hashtable = rbeConfigList.find(rbeID) as Hashtable;
var rbeData:Object =
{
restURL:rbeConfig.find("rbeRESTURL") as String,
layername:rbeConfig.find("rbeLayerName") as String,
icon: rbeConfig.find("rbeIcon") as String,
titlefield: rbeConfig.find("rbeTitleField") as String,
checked: rbeConfig.find("rbeChecked") as String,
count: "0" as String
};
if(rbeData.checked == "false")
{
hiddenRBELayers.addItem(rbeData.layername);// as String);
}
rbeAC.addItem(rbeData);
}
}
내가 어떤로드 텍스트를 얻지 못하고 있었다, 그래서 나는에서 내 clearMessage 및 enableButtons 기능을했다 ... 내 경우 clickHandler ...
private function Buffer_Route_clickHandler():void
{
showMessage("Loading RBE Options");
disableButtons();
if(Buffer_Route.selected && rbeAC.length == 0){
createRbeAC();
}
}
입니다 그리고 여기 creatRbeAC 기능입니다 코드를 추가하여 메시지를 추가했는지 확인하고 단추를 사용하지 않도록 설정하십시오. 나는 아직도 아무것도 얻지 않고있다. clearMessage 및 enableButtons는이 버튼 클릭 처리기 또는 creatRbeAC 함수에서 찾을 수 없기 때문에 컴퓨팅이 끝난 후에도 로딩 메시지 및 버튼이 비활성화되지 않은 이유를 이해할 수 없습니다.
몇 가지 유의 사항. creatRbeAC 함수를 주석 처리하면로드 메시지가 표시되고 버튼이 비활성화됩니다. 마치 creatRbeAC 함수가 코드에있을 때 그 함수가 무시되는 것과 거의 같습니다.
어떤 도움이 필요합니까? 나는 그것을 매우 감사 할 것이다. 잘만되면 나는 충분한 정보를 제공했다.