Привет,
Я немного запутался с каким-то ActionScript, над которым я работаю. Для моего графического интерфейса я написал четыре функции на время вычислений. Это showMessage («Загрузка текста ...»), disableButtons (), clearMessage () и enableButtons (). Они отлично работают на протяжении всей программы. ShowMessage отображает сообщение о загрузке, disableButtons отключает кнопки, чтобы никто ничего не мог щелкнуть, clearMessage очищает сообщение о загрузке, когда работа выполнена, и enableButtons включает их все обратно.
По какой-то причине есть один обработчик нажатия кнопки, который доставляет мне неприятности, и я не знаю почему. Я настроил его так же, как и другие подобные ему (которые все работают), но этот не отображает сообщение и не отключает мои кнопки. Вот мой ClickHandler ...
private function Buffer_Route_clickHandler():void
{
showMessage("Loading RBE Options");
disableButtons();
if(Buffer_Route.selected && rbeAC.length == 0){
createRbeAC();
}
}
А вот и функция creatRbeAC ...
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 из кода, чтобы посмотреть, добавляет ли он сообщение и отключает ли кнопки для начала. Я все еще ничего не получаю, хотя. Так как clearMessage и enableButtons не найдены в обработчике щелчков этой кнопки или функции creatRbeAC, я не могу понять, почему сообщение и кнопки загрузки не отключаются, даже когда вычисления завершены.
Некоторые вещи на заметку. Если я закомментирую функцию creatRbeAC, появится сообщение о загрузке и кнопки отключатся. Это почти как если бы эти функции игнорировались, когда функция creatRbeAC находится в коде.
Любая помощь? Буду весьма признателен за это. Надеюсь, я предоставил достаточно информации.