【发布时间】:2018-09-22 08:38:40
【问题描述】:
在使用 JFileChooser 和 Windows 外观时,我的加载时间大约为 21-40 秒。如果我删除外观,代码运行速度非常快。我猜问题出在初始化 new JFileChooser("path"); 时。有人能帮我吗 ?这是我的代码
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
public class MainClass {
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
createGUI();
}
});
}
private static void createGUI() throws HeadlessException {
final JFrame frame = new JFrame("JFileChooser Demo");
try
{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch (Exception e)
{
e.printStackTrace();
}
final JFileChooser fc = new JFileChooser();
fc.setMultiSelectionEnabled(true);
fc.setCurrentDirectory(new File("./feedback"));
JButton btn1 = new JButton("Show Dialog");
btn1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
fc.showDialog(frame, "Choose");
}
});
Container pane = frame.getContentPane();
pane.setLayout(new GridLayout(3, 1, 10, 10));
pane.add(btn1);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}
}
【问题讨论】:
-
在什么版本的 Java 和 Windows 上?我已经在带有 java 1.8.0_66 的 Windows 7 上尝试过这个,没有问题。 (在这个工作站上并不是最新的......)。同样在具有 XP 和 Java 1.6.0_23 的 VM 上(在这个上根本不是最新的!!!)
-
m 使用 Windows 10 和 java 1.7.0_17。升级可以解决吗?
-
刚刚更新了我的评论,它可能不是 java,它适用于 java 6 和 8。但可能是 windows 10 的外观和下降。不要在办公室...
-
我已经快速下载了java 1.8.0_161,我仍然可以看到问题。感谢AxelH的快速回复。
-
我说的是初始加载时间,我指的是实际弹出的 jfilechooser,而不是任何文件的加载时间。我正在运行时钟频率为 5400 rpm 的硬盘。我相信运行时间会有所不同使用 ssd,如果您使用的是一个。尝试多次加载实际的 gui,您会看到延迟。抱歉,我昨天没有注意到您的 cmets。