У меня проблемы с запуском любого приложения на моей машине разработки, использующего объект Swing «JFileChooser».Когда я первоначально разработал приложение и протестировал его, открылось окно «Выбор файла», и все было в порядке, но, как и через неделю, я попытался запустить приложение еще раз, и ничего не показывалось вообще.
Сначала я подумал, что это былопроблема с многопоточностью (мое оригинальное приложение использовало небольшую многопоточность), поэтому я скопировал и вставил следующий код (я получил код из Интернета), чтобы проверить его:
package com.kwm.util.test;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
final JFrame frame = new JFrame("JFileChooser Demo");
final JFileChooser fc = new JFileChooser();
fc.setMultiSelectionEnabled(true);
fc.setCurrentDirectory(new File("C:\\tmp"));
JButton btn1 = new JButton("Show Dialog");
btn1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
fc.showDialog(frame, "Choose");
}
});
JButton btn2 = new JButton("Show Open Dialog");
btn2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int retVal = fc.showOpenDialog(frame);
if (retVal == JFileChooser.APPROVE_OPTION) {
File[] selectedfiles = fc.getSelectedFiles();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < selectedfiles.length; i++) {
sb.append(selectedfiles[i].getName() + "\n");
}
JOptionPane.showMessageDialog(frame, sb.toString());
}
}
});
JButton btn3 = new JButton("Show Save Dialog");
btn3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
fc.showSaveDialog(frame);
}
});
Container pane = frame.getContentPane();
pane.setLayout(new GridLayout(3, 1, 10, 10));
pane.add(btn1);
pane.add(btn2);
pane.add(btn3);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 200);
frame.setVisible(true);
}
}
И все же я вижуничего такого.Я предполагаю, что машина имеет проблему, но не может определить, в чем проблема.
Любая помощь с этим будет принята с благодарностью.
РЕДАКТИРОВАТЬ 1 Версия ОСверсия Windows Server 2003 Enterprise, SP1
Версия Java: 1.5.0_12 (JDK и JRE)
Я также боюсь, что это может быть связано с проблемой сети ...JFileChooser ищет сетевой каталог, и DNS может конфликтовать.Есть ли способ проверить это?Может быть, проверить, что JVM регистрирует?