Java JFileChooser不处理?
基本上,我正在制作一个屏幕捕获程序,它使用Java JFileChooser不处理?,java,jfilechooser,screen-capture,Java,Jfilechooser,Screen Capture,基本上,我正在制作一个屏幕捕获程序,它使用JFileChooser来选择保存图像的位置 问题是:当我选择使用JFileChooser保存时,它使我的程序永远不会结束。我的意思是,如果在保存后单击主GUI上的x按钮,它将消失但继续运行 我已尝试删除JFileChooser,并将其保存到默认位置,解决了问题,然后我的程序正常关闭 但是,我想使用JFileChooser,但它会让我的程序永远运行吗 这是我的JFileChooser代码 JFileChooser fc = new JFileChoose
JFileChooser
来选择保存图像的位置
问题是:当我选择使用JFileChooser
保存时,它使我的程序永远不会结束。我的意思是,如果在保存后单击主GUI上的x按钮,它将消失但继续运行
我已尝试删除JFileChooser
,并将其保存到默认位置,解决了问题,然后我的程序正常关闭
但是,我想使用JFileChooser
,但它会让我的程序永远运行吗
这是我的JFileChooser代码
JFileChooser fc = new JFileChooser();
fc.removeChoosableFileFilter(fc.getFileFilter());
FileFilter filter = new FileNameExtensionFilter("JPEG file", "jpg", "jpeg");
fc.setFileFilter(filter);
if ( fc.showSaveDialog( new JFrame() ) == JFileChooser.APPROVE_OPTION ) {
String filepath = fc.getSelectedFile().getPath();
filepath += ".jpg";
File file = new File(filepath);
try {
ImageIO.write(capturedImage, "jpg", file);
} catch (IOException e1) {
e1.printStackTrace();
}
System.out.println(fc.getSelectedFile().getName() + ".jpg successfully saved.");
}
我真的很笨。我找到了问题的答案。我在创建一个全新的JFrame时,我将文件选择器设置为一个,而不是设置为我已经创建的文件选择器 通过替换
fc.showSaveDialog( new JFrame() ) == JFileChooser.APPROVE_OPTION
到
这是我程序的主窗口。我真的很笨。我找到了问题的答案。我在创建一个全新的JFrame时,我将文件选择器设置为一个,而不是设置为我已经创建的文件选择器 通过替换
fc.showSaveDialog( new JFrame() ) == JFileChooser.APPROVE_OPTION
到
这是我程序的主窗口。我真的很笨。我找到了问题的答案。我在创建一个全新的JFrame时,我将文件选择器设置为一个,而不是设置为我已经创建的文件选择器 通过替换
fc.showSaveDialog( new JFrame() ) == JFileChooser.APPROVE_OPTION
到
这是我程序的主窗口。我真的很笨。我找到了问题的答案。我在创建一个全新的JFrame时,我将文件选择器设置为一个,而不是设置为我已经创建的文件选择器 通过替换
fc.showSaveDialog( new JFrame() ) == JFileChooser.APPROVE_OPTION
到
其中MainWindow。这是我的程序的主窗口。当您显示
JFileChooser
fc.showSaveDialog(new JFrame())
这意味着,如果您的mainJFrame
设置为DISPOSE\u ON\u CLOSE
您的程序将不存在,因为您仍然拥有空帧。要解决此问题,请执行以下操作:
fc.showSaveDialog(null)
或
您可能应该将主JFrame上的默认关闭操作设置为
EXIT\u on\u close
例如:mainJFrame.setDefaultCloseOperation(JFrame.EXIT\u on\u close)
当您显示JFileChooser
时,您正在创建一个新的JFrame
fc.showSaveDialog(new JFrame())
这意味着,如果您的mainJFrame
设置为DISPOSE\u ON\u CLOSE
您的程序将不存在,因为您仍然拥有空帧。要解决此问题,请执行以下操作:
fc.showSaveDialog(null)
或
您可能应该将主JFrame上的默认关闭操作设置为
EXIT\u on\u close
例如:mainJFrame.setDefaultCloseOperation(JFrame.EXIT\u on\u close)
当您显示JFileChooser
时,您正在创建一个新的JFrame
fc.showSaveDialog(new JFrame())
这意味着,如果您的mainJFrame
设置为DISPOSE\u ON\u CLOSE
您的程序将不存在,因为您仍然拥有空帧。要解决此问题,请执行以下操作:
fc.showSaveDialog(null)
或
您可能应该将主JFrame上的默认关闭操作设置为
EXIT\u on\u close
例如:mainJFrame.setDefaultCloseOperation(JFrame.EXIT\u on\u close)
当您显示JFileChooser
时,您正在创建一个新的JFrame
fc.showSaveDialog(new JFrame())
这意味着,如果您的mainJFrame
设置为DISPOSE\u ON\u CLOSE
您的程序将不存在,因为您仍然拥有空帧。要解决此问题,请执行以下操作:
fc.showSaveDialog(null)
或
您可能应该将主JFrame上的默认关闭操作设置为
EXIT\u on\u close
例如:mainJFrame.setDefaultCloseOperation(JFrame.EXIT\u on\u close)
这也是乔治亚理工学院图片类附带的流行文件选择器类的关键问题。我之所以提到这一点,是因为它在全国范围内被intro CS类广泛使用,而且这个bug已经被报道了一段时间,所以这个信息可能与相当多的人有关。这也是乔治亚理工学院图片类附带的流行的FileChooser类的关键问题。我之所以提到这一点,是因为它在全国范围内被intro CS类广泛使用,而且这个bug已经被报道了一段时间,所以这个信息可能与相当多的人有关。这也是乔治亚理工学院图片类附带的流行的FileChooser类的关键问题。我之所以提到这一点,是因为它在全国范围内被intro CS类广泛使用,而且这个bug已经被报道了一段时间,所以这个信息可能与相当多的人有关。这也是乔治亚理工学院图片类附带的流行的FileChooser类的关键问题。我之所以提到这一点,是因为它在全国范围内被intro CS类广泛使用,而且这个bug已经被报道了一段时间,所以这个信息可能与相当数量的人有关。