关闭JFrame窗口时如何做某事

时间:2014-10-24 07:41:25

标签: java multithreading jframe

我完成了一个运行多个线程的应用程序。每个帖子都有一个 JFrame 窗口。 我想要做的是当用户点击 X 关闭窗口时,只是指定的线程及其窗口被关闭。

public ImageShower( VideoStream localStream){

    // Something something

    frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
    frame.add(rViewer);

    frame.addWindowListener(new java.awt.event.WindowAdapter(){
        @Override
        public void windowClosing(java.awt.event.WindowEvent windowEvent){
            localStream.stopWork(); // this part can not access the local stream here. it says that the localStream should be final.
        }
    }); 
}

这就是我写的,但是在方法内部无法访问localStream。 如何处理?

1 个答案:

答案 0 :(得分:0)

您应该实例化您的流媒体类,以便您可以根据需要响应其运行方法。或者将您的代码更改为public ImageShower(final VideoStream localStream) {}