【问题标题】:Unable to double click of video in flash无法双击 Flash 中的视频
【发布时间】:2012-07-27 21:46:48
【问题描述】:

我正在使用 Eclipse Helios 使用 MXML 文件构建闪存。我目前正在我的闪存中显示一个视频。我想要的是,当我双击视频时,必须发生一个事件,但不幸的是我无法在我的网页上获取视频的双击事件。这是我的 mxml 代码:

 <?xml version="1.0"?>
<!-- Publish Stream mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="Initialize();" 
        layout="absolute" paddingLeft="0" paddingTop="0" paddingBottom="0"
        paddingRight="0" >

    <!-- Script for PublishStream -->
    <mx:UIComponent  id="uiComp" visible="true" doubleClickEnabled="true" mouseEnabled="true"/>

    <mx:Script source="test.as"></mx:Script>
</mx:Application>

这是我的 as 文件代码:

import mx.controls.Alert;
import flash.net.NetStream;
import flash.net.NetConnection;


private var _video           : Video;
private var _serverName      : String;
private var _connection      : NetConnection;
private var _stream          : NetStream;


public function Initialize():void
{
    _connection = new NetConnection();
    _connection.client = { onBWDone: function():void{ /*Alert.show('onBWDone', 'Alert Box', mx.controls.Alert.OK); */} };
    _connection.objectEncoding = flash.net.ObjectEncoding.AMF0;

    _connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
    _connection.connect("server");
    Alert.show("Initialise", 'Alert Box', mx.controls.Alert.OK);
}

//Status event handler
public function netStatusHandler(event:NetStatusEvent):void 
{  
    Alert.show("hanlder", 'Alert Box', mx.controls.Alert.OK);
    _stream = new NetStream(_connection);
    _video = new Video();
    _video.doubleClickEnabled = true;
    _video.addEventListener(MouseEvent.DOUBLE_CLICK, doubleClickHandler);
    _video.attachNetStream(_stream);
     _stream.play("FlickAnimation.flv");
     uiComp.addChild(_video);
}

private function doubleClickHandler(event:MouseEvent):void
{
   Alert.show("Double Clicked", 'Alert Box', mx.controls.Alert.OK);
}

请告诉我为什么我没有双击视频,或者有没有其他方法可以解决这个问题。任何帮助将不胜感激。

【问题讨论】:

    标签: flash video flex4 mouseevent double-click


    【解决方案1】:

    您的代码不应该从一开始就编译。视频不是交互式对象,并且没有名称为“doubleClickEnabled”的属性。 IE。无法处理视频上的任何鼠标或手势事件(不仅是双击)。您要做的是在视频下方或上方放置一些交互式对象,以便它可以处理点击,或者将视频放入容器中,容器本身就是一个交互式对象。

    【讨论】:

    • 是的,你是对的,我将该视频添加到一个组件中,然后将双击事件添加到该容器中,它就像魅力一样工作。非常感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-03
    • 1970-01-01
    • 2015-03-02
    • 2011-10-26
    • 2012-04-21
    • 2023-03-21
    相关资源
    最近更新 更多