JFileChooser is a very powerful Component in Java. It even enables filtering of file names. However, there is no direct method to prevent a user from entering the File Name input in it.
The following method disables the JTextField File input text box in JFileChooser, by basically taking the JFileChooser as a Component, looking for a Component that matches JTextField and disabling the JTextField input.
public boolean disableTextField(Container container) {
Component[] comps = container.getComponents();
for (Component comp : comps) {
if (cmp instanceof JTextField) {
((JTextField) comp).setEnabled(false);
return true;
}
if (comp instanceof Container) {
if (disableTextField((Container) comp)) return true;
}
}
return false;
}