在全新安装 Big Sur 和 AdoptOpenJDK 11 的 MacBook Pro (2015) 上,我开发了一个使用 JFileChooser 的用于教育目的的 Java 程序。我没有使用任何 IDE 特定的代码。由于程序的其余部分并不重要,这里是一个对我产生相同问题的最小示例(注意:这里仅作为示例,单击按钮将打开文件选择器,选择一个文件并单击“确定”将更改按钮的文本为“确定”):
import javax.swing.*;
import java.awt.event.*;
public class Test extends JFrame implements ActionListener {
private JFileChooser jf;
private JButton jb;
public Test() {
setSize(480,320);
jf = new JFileChooser();
jf.setDialogType(JFileChooser.OPEN_DIALOG);
jb = new JButton("CLICK ME");
jb.addActionListener(this);
add(jb);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource().equals(jb)) {
jf.setVisible(true);
final int result = jf.showOpenDialog(null);
if (result == JFileChooser.APPROVE_OPTION) {
jb.setText("OK");
}
}
}
public static void main(String[] …Run Code Online (Sandbox Code Playgroud)