Конечно, вы устанавливаете JFrame видимым в конце его инициализации. Это необходимо сделать в методе main () вашего класса запуска. Где ваш?
JFilePicker (созданный: Нам Ха Минь ) применяется к JFrame как Java Компонент в чтобы сэкономить немного времени на GUI разработке. Лично я бы просто использовал JFileChooser непосредственно в событии JButton ActionPerformed . Если бы вы правильно следовали инструкциям, то увидели бы, что вам нужен метод main () , который имеет смысл. Класс запуска вашего приложения должен выглядеть примерно так:
import java.awt.FlowLayout;
import java.io.File;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;
public class TestJFilePicker extends JFrame {
private static final long serialVersionUID = 1L;
public TestJFilePicker() {
super("Test using JFilePicker");
setLayout(new FlowLayout());
// set up a file picker component
JFilePicker filePicker = new JFilePicker("Pick a file", "Browse...");
filePicker.setMode(JFilePicker.MODE_OPEN);
filePicker.addFileTypeFilter(".jpg", "JPEG Images");
filePicker.addFileTypeFilter(".mp4", "MPEG-4 Videos");
// access JFileChooser class directly
JFileChooser fileChooser = filePicker.getFileChooser();
fileChooser.setCurrentDirectory(new File("D:/"));
// add the component to the frame
add(filePicker);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(520, 100);
setLocationRelativeTo(null); // center on screen
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new TestJFilePicker().setVisible(true);
}
});
}
}
Приведенный выше код (который является работой Нам Ха Минь ), конечно, предполагает, что вы уже применили Файлы JFilePicker и FileTypeFilter для вашего проекта. Без них приведенный выше код не будет работать.