AS3视频MouseEvent点击不起作用

3

我创建了一个简单的视频,尝试将鼠标点击事件附加到它上面,但是事件并没有触发。这是我的代码:

var connection:NetConnection;
var stream:NetStream;
var video:Video;

connection = new NetConnection();
connection.connect(null);

stream = new NetStream(connection);
stream.client = this;

video = new Video(425, 320);
stage.addChild(video);


video.attachNetStream(stream);

stream.bufferTime = 1;

stream.receiveAudio(true);
stream.receiveVideo(true);

stream.play("freshprince.flv");

video.addEventListener(MouseEvent.CLICK, function() {

    trace("Video Clicked");                                                
});

这是什么问题,为什么鼠标事件无法工作?
1个回答

2
将视频放入movieClip中,并将事件添加到movieClip中。
video = new Video(425, 320);
var mc:MovieClip = new MovieClip();
mc.addChild(video);
stage.addChild(mc);

mc.addEventListener(MouseEvent.CLICK, function() {
  trace("Video Clicked");                                                
});

注意:Video类不是InteractiveObject类的子类,因此无法触发鼠标事件。但是,您可以在包含Video对象的显示对象容器上调用addEventListener()方法。

1
ymutlu是正确的。您需要一个继承自InteractiveObject的类。然而,据我所知,没有必要使用MovieClip。更简单的DisplayObjectContainer,例如Sprite可能更合适和更轻量级。 - djip.co

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接