gpt4 book ai didi

java - 从actionPerformed和actionListener Java返回字符串

转载 作者:行者123 更新时间:2023-12-02 07:00:05 25 4
gpt4 key购买 nike

我创建了一个简单的程序,您可以在其中选择一个文件,并希望返回文件路径的字符串,我不太确定我在这里做错了什么。

public static String createWindow() {

JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);
JFrame frame = new JFrame("JComboBox Test");
frame.setLayout(new FlowLayout());
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JButton inbutton = new JButton("Select Input File");

inbutton.addActionListener(new ActionListener() {

String imagePath;

public void actionPerformed(ActionEvent ae) {
JFileChooser fileChooser = new JFileChooser();
int returnValue = fileChooser.showOpenDialog(null);
if (returnValue == JFileChooser.APPROVE_OPTION) {
File selectedFile = fileChooser.getSelectedFile();
imagePath = selectedFile.getPath();
}
}
});

frame.add(inbutton);
frame.pack();
frame.setVisible(true);
return imagePath;
}

最佳答案

您尝试在调用该方法时立即返回一个值,但直到发生某些事件时结果才可用。你的逻辑已经不行了。您应该做的是在模式对话框而不是 JFrame 中显示按钮。对话框的模式将从对话框显示的位置有效地暂停程序流,直到对话框不再可见。

关于java - 从actionPerformed和actionListener Java返回字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16763760/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com