У меня есть приложение AIR, написанное на html/javascript, и я хочу использовать функции печати Actionscript, но у меня нет опыта в ActionScript для AIR.Как получить доступ к ActionScript из Javascript в Adobe AIR
Где я могу поместить код ActionScript? Заходит ли он в файл mxml или его необходимо скомпилировать во Flash-приложение. Где я могу поместить его и как включить его в html-документ? Наконец, как я могу назвать функцию AS из Javascript?
===== ===== обновление
Я знаю, что я должен составить либо .mxml или .as файл в .swf, используя mxmlc и у меня есть следующие в моем файле .as :
package {
import mx.controls.Alert;
public class HelloWorld {
public function HelloWorld():void {
trace("Hello, world!");
}
}
}
Или поочередно, это в .mxml файле:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
public function HelloWorld():void {
Alert.show("hello world!");
trace("Hello, world!");
}
]]>
</mx:Script>
</mx:Application>
компилируется нормально, но когда я inclu де его в HTML-файл с:
<script src="actionscript.swf" type="application/x-shockwave-flash"></script>
Я получаю следующее сообщение об ошибке:
TypeError: Error # 1009: Не удается получить доступ к свойству или методу нулевой ссылки на объект. в mx.managers :: FocusManager/активировать() в mx.managers :: SystemManager/activateForm() в mx.managers :: SystemManager/активировать() на mx.core :: Application/initManagers() в mx.core :: Применение/инициализации() в ActionScript/инициализации() в mx.managers :: SystemManager/http://www.adobe.com/2006/flex/mx/internal::childAdded() в mx.managers :: SystemManager/initializeTopLevelWindow() в mx.managers :: SystemManager/http://www.adobe.com/2006/flex/mx/internal::docFrameHandler() at mx.managers :: SystemManager/docFrameListener()
Любые идеи, что это значит?
Вы говорите, что я могу использовать функции AS непосредственно из JS без необходимости компиляции ActionScript во флеш? – 2009-04-17 02:20:24