程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

当我 DISPOSE_ON_CLOSE 时无法停止流

发布于2023-11-06 08:17     阅读(1166)     评论(0)     点赞(17)     收藏(5)


当我关闭 jframe 时,我试图停止流。我不想 EXIT_ON_CLOSE 因为我不想退出我的应用程序。当我使用 DISPOSE_ON_CLOSE 时,框架关闭,但音频流继续播放。有没有办法在不使用某些外部按钮的情况下停止此流。(我想通过单击 jframe 上的“X”来关闭流)。谢谢你的帮助。

public class MediaPlayer {
    private JFrame ourFrame = new JFrame();
    private EmbeddedMediaPlayerComponent ourMediaPlayer;
    private String mediapath = "";

    MediaPlayer(String vlcPath,String mediaURL) {
        this.mediapath = mediaURL;
        NativeLibrary.addSearchPath(RuntimeUtil.getLibVlcLibraryName(), vlcPath);
        ourMediaPlayer =  new EmbeddedMediaPlayerComponent();
        ourFrame.setContentPane(ourMediaPlayer);
        ourFrame.setSize(1200, 800);
        ourFrame.setVisible(true);
        ourFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    }

    public void run() {
        ourMediaPlayer.getMediaPlayer().playMedia(mediapath);
    }
}

解决方案


您可以在窗口关闭时处理流关闭操作,如下所示:

   ouFrame.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosed(WindowEvent e) {
                // close/stop audio stream here
                System.out.println("closed");
            }
    });


所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.javaheidong.com/blog/article/677593/f307a4f12b56984bf43a/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

17 0
收藏该文
已收藏

评论内容:(最多支持255个字符)