弱弱的问下ldh911,approveSelection()没选文件是不会被触发的 昨天发了个帖:“高分雪地挥泪跪求获取JFileChooser弹出JDialog的按钮方法” 弱弱的问下ldh911,approveSelection()方法没选文件或者没填路径是不会被触发的,这就没办法判断所选文件路径是否为空了,在线等 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 咦?如果你使用 showOpenDialog() 开启对话框的话,完全没选择文件就点击“打开”,对话框根本就不会有任何反应啊? 确实出了个难题啊,供参考了:import java.awt.*;import java.awt.event.*;import java.io.*;import java.lang.reflect.*;import javax.swing.*;import javax.swing.plaf.basic.*;public class TestJFileChooser extends JFileChooser { private boolean isSelected = false; public static void main(String[] args) { new TestJFileChooser().showOpenDialog(null); } @Override public int showDialog(Component parent, String approveButtonText) throws HeadlessException { if (this.ui instanceof BasicFileChooserUI) { try { Method method = BasicFileChooserUI.class.getDeclaredMethod("getApproveButton", JFileChooser.class); method.setAccessible(true); JButton btnApprove = (JButton) method.invoke(this.ui, this); System.out.println(btnApprove); btnApprove.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if (TestJFileChooser.this.isSelected) { TestJFileChooser.this.isSelected = false; } else { JOptionPane.showMessageDialog(null, "Please select a file."); } } }); } catch (Exception e) { e.printStackTrace(); } } return super.showDialog(parent, approveButtonText); } @Override public void setSelectedFile(File file) { this.isSelected = true; super.setSelectedFile(file); }} java解码 -- BMP图片 那位大哥手头有 lws格式的3d文件 发我分 最近做的一道小题,感觉有点费劲,大家可以试试 myeclipse和JBuilder进行swing编程那个好? 请问怎样将一个浮点数反序输出? Access中能否使用PreparedStatement? 一个方法调用语句的问题 现在比较好一点的日志记录包有哪些? 关于ILOG的应用的一个错误,请高手帮忙分析原因,感激不尽,一定重谢 如何判断日期的有效性 Java Word PDF PPT 读写 如何平滑关闭程序(关闭程序时,想执行一定的计算)
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.lang.reflect.*;import javax.swing.*;
import javax.swing.plaf.basic.*;public class TestJFileChooser extends JFileChooser { private boolean isSelected = false; public static void main(String[] args) {
new TestJFileChooser().showOpenDialog(null); } @Override
public int showDialog(Component parent, String approveButtonText) throws HeadlessException {
if (this.ui instanceof BasicFileChooserUI) {
try {
Method method = BasicFileChooserUI.class.getDeclaredMethod("getApproveButton", JFileChooser.class);
method.setAccessible(true);
JButton btnApprove = (JButton) method.invoke(this.ui, this);
System.out.println(btnApprove);
btnApprove.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
if (TestJFileChooser.this.isSelected) {
TestJFileChooser.this.isSelected = false;
} else {
JOptionPane.showMessageDialog(null, "Please select a file.");
}
}
});
} catch (Exception e) {
e.printStackTrace();
} }
return super.showDialog(parent, approveButtonText);
} @Override
public void setSelectedFile(File file) {
this.isSelected = true;
super.setSelectedFile(file);
}}