Как изменить состояние приложения в коде, используя переменную? когда я предоставляю статическую строку, она работает нормально, но не с переменной.
Например, это работает:
(родительский как mx.core.Application) .currentState = 'history'
А это не так:
(родительский как mx.core.Application) .currentState = @ data
Да, я знаю, что @data заполняется, так как я печатаю его в окне предупреждения. И да, я уже пробовал "currentState = @data" и "currentState = '@data'. К сожалению, они не работают.
Вот объект меню:
<mx:MenuBar id="mnuMain" labelField="@label" itemClick="menuHandler(event);">
<mx:XMLList>
<menuitem label="File">
<menuitem label="Exit" data="exit" />
</menuitem>
<menuitem label="View">
<menuitem label="Home" data="home" />
<menuitem label="Monitor" data="impmon" />
<menuitem label="History" data="history" />
<menuitem label="Tables" data="tables" />
<menuitem label="Schema View" data="schema" />
</menuitem>
</mx:XMLList>
</mx:MenuBar>
Вот обработчик:
private function menuHandler(event:MenuEvent):void {
var newstate:String;
newstate = @data.toString();
(parent as mx.core.Application).currentState = newstate;
}