使用 Flex 和 Dojo 开发交互式Web应用程序
2010-03-03 00:00:00 来源:WEB开发网一方面,需要在 Flex 应用程序中利用外部接口注册一个函数,作为接收 JSP 中图片选择事件的一个入口,具体实现代码如下:
清单 4. FirstFlexProject.mxml 中显示所选图片功能实现
ExternalInterface.addCallback(“getValue”, getImgValue);
private function getImgValue(imgURL:String):Boolean {
var returnMsg:Boolean;
if(zoomComponent.image.source != imgURL)
{
zoomComponent.image.load(imgURL);
application.setFocus();
}
return returnMsg;
}
清单 4 分为两部分,第一行是利用外部接口方式注册了一个函数,提供给 JSP 去调用;后面的 getImgValue() 方法则是通过调用 SWFLoader.as 文件中 load 方法的方式从文件目录中加载图片信息。
另一方面,需要在 JSP 中调用所开发的 Flex 应用程序以及其向外暴露的接口。清单 5 说明了如何在 JSP 中定义 Flex 应用程序实例,值得注意的是使用 src 属性指定所调用的 Flex 应用程序,使用 id 属性将实例的 ID 传给 Flex 应用程序。还应该注意到 wmode 这个属性,它的默认值是 Window,表明 Flash 应用程序与 HTML 层没有任何的交互,并且始终位于最顶层,而在应用中实现了 Flash 上添加浮层,所以将此属性值改为 Opaque。清单 6 简单说明了如何调用 Flex 中所实现的“显示所选图片”功能的接口。
清单 5. JSP 中定义 Flex 程序实例
<td colspan="4" valign="top" id="imgFlex" >
<script language="JavaScript" type="text/javascript">
AC_FL_RunContent(
"src","<%=request.getContextPath()%>/theme/FirstFlexProject",
"width", "100%",
"height", "420","align", "middle",
"id", "ImageObj",
"quality", "high",
"name", "ImageObj",
"wmode", "opaque",
"allowScriptAccess","sameDomain",
"type", "application/x-shockwave-flash"
"pluginspage", "http://www.adobe.com/go/getflashplayer"
);
</script>
</td>
更多精彩
赞助商链接