private Component visualComponent;
//代码片断
public void controllerUpdate(ControllerEvent e){
.....
lse if (e instanceof RealizeCompleteEvent)
{
// player.getVisualComponent()是一个播放所有视频媒体的可视组件。
visualComponent = player.getVisualComponent();
if (visualComponent != null)
{
contentPane.remove(visualComponent);
visualComponent = null;
}
}
if (visualComponent != null)
{
contentPane.add(visualComponent);
}
contentPane.doLayout();
........
else if (e instanceof PrefetchCompleteEvent)
{
if (visualComponent != null)//
{
// contentPane.add(visualComponent);//没有图片的问题在这里
visualComponent.addMouseListener(new MouseHandler());
contentPane.repaint();
// visualComponent.addMouseMotionListener(new MouseMotionHandler());
}
}
这样就可以捕捉到JMF播放界面中的鼠标事件了,在后面多用了一次contentPane.add(visualComponent),导致播放时有声音,没有图片,谁知道原因请留言
//代码片断
public void controllerUpdate(ControllerEvent e){
.....
lse if (e instanceof RealizeCompleteEvent)
{
// player.getVisualComponent()是一个播放所有视频媒体的可视组件。
visualComponent = player.getVisualComponent();
if (visualComponent != null)
{
contentPane.remove(visualComponent);
visualComponent = null;
}
}
if (visualComponent != null)
{
contentPane.add(visualComponent);
}
contentPane.doLayout();
........
else if (e instanceof PrefetchCompleteEvent)
{
if (visualComponent != null)//
{
// contentPane.add(visualComponent);//没有图片的问题在这里
visualComponent.addMouseListener(new MouseHandler());
contentPane.repaint();
// visualComponent.addMouseMotionListener(new MouseMotionHandler());
}
}
这样就可以捕捉到JMF播放界面中的鼠标事件了,在后面多用了一次contentPane.add(visualComponent),导致播放时有声音,没有图片,谁知道原因请留言
本文探讨了Java Media Framework (JMF) 播放组件中视觉组件(visualComponent)的使用方法,并针对播放时出现的声音正常但无画面显示的问题进行了解析。通过调整visualComponent的添加时机和方式,成功解决了视频播放中鼠标事件捕捉及画面显示的问题。
1324

被折叠的 条评论
为什么被折叠?



