flex视频监控播放实时流
我所采用的方式是Flex+ActiveX控件(也许还有更好的方法:))。 1.Flex中使用ActiveX控件 ? ? Flex中使用ActiveX控件我的思路是: ????1.Flex中嵌入一个网页。 ????2.布局网页到Flex界面中合适的位置。 ????3.在网页中嵌入ActiveX控件。 ? ? 4.解决ActiveX控件和Flex的互相访问。 很幸运,网上有很多介绍如何在Flex中嵌入网页的文章,其中介绍到了IFrame控件的用法(http://code.google.com/p/flex-iframe/),可以在Flex中使用IFrame控件,如下: ???? <ns1:IFrame?id="iframe_TvWall"?source="/TVWall.htm"?> </ns1:IFrame> TVWall.htm就是嵌入ActiveX的网页 2.网页中嵌入ActiveX控件 <OBJECT?ID="TVWallAX1"?WIDTH="100%"?HEIGHT="100%" ?CLASSID="CLSID:1DD61B8D-F1E6-43B9-82CB-3AD4C290E40F"> ????<PARAM?NAME="_Version"?VALUE="65536"> ????<PARAM?NAME="_ExtentX"?VALUE="2646"> ????<PARAM?NAME="_ExtentY"?VALUE="1323"> ????<PARAM?NAME="_StockProps"?VALUE="0"> </OBJECT> 3.Flex调用ActiveX的函数 ????需要在网页中编写js脚本如下: <SCRIPT?LANGUAGE="JavaScript"> ????function?doCmd(param) ????{ ????????return?TVWallAX1.SendCmd(param); ????} </SCRIPT> SendCmd是在ActiveX控件中定义的函数,参数为字符串。 ????Flex可以通过如下程序代码访问ActiveX的函数(Flex通过js访问ActiveX) iframe_TvWall.callIFrameFunction("doCmd",array); 4.ActiveX控件访问Flex函数 ????需要在网页中编写js脚本如下: <SCRIPT?LANGUAGE="JavaScript"?FOR="TVWallAX1"?EVENT="Notify(param)"> <!-- window.parent.document.getElementById("Client").getFlexMsg(param); --> Client是swf在html文件中的id。 Notify是在ActiveX控件中定义的通知函数,参数为字符串。 ????Flex代码中需要实现被调用的代码,如下: ????ExternalInterface.addCallback("getFlexMsg",getMsgFromFlex); ???? ????private?function?getMsgFromFlex(param):void ????{ ????????Alert.show("ok"); ????} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |