当我关闭我的JFileChooser
对话框时,它会再次打开。我正在使用 libgdx 更新来检查输入。
这是输入代码...
if(!SaveDialog.open) {
if(input.isKeyPressed(Input.Keys.S)) {
SaveDialog.Save(pixmap);
}
}
如果我按S
得很快,对话框只会打开一次,但如果我按 2 秒,就会有无数个(我认为)JFileChooser
对话框。
这是我的代码...
public class SaveDialog {
private static boolean inited = false;
private static JFileChooser fc;
public static boolean open = false;
public static void Init() {
fc = new JFileChooser();
fc.setFileFilter(new FileFilter() {
public String getDescription() {
return ".png";
}
public boolean accept(File f) {
return f.getName().endsWith(".png");
}
});
inited = true;
}
public static void Save(Pixmap pixmap) {
open = true;
if(!inited) {
Init();
}
fc.showSaveDialog(null);
byte[] data;
try {
data = PNG.toPNG(pixmap);
FileHandle fh = new FileHandle(fc.getSelectedFile() + ".png");
fh.writeBytes(data, false);
open = false;
}
catch (IOException e) {
open = false;
e.printStackTrace();
}
}
}
有人可以帮我解决这个问题。