思想:获取文件选择对话框中“文件名”显示栏的组件,设置组件不可编辑。
import java.awt.Component;
import java.awt.Color;
import javax.swing.*;
/**
* java文件选择对话框
* 文件名不可编辑
*/
public class JFileChooserUI {
private static JLabel findLabel(JComponent comp, String s) {
JLabel label = null;
if (comp instanceof JLabel) {
if (((JLabel) comp).getText().equals(s)) {
label = (JLabel) comp;
}
} else if (comp instanceof JComponent) {
Component[] comps = comp.getComponents();
for (int i = 0; i < comps.length; i++) {
if (comps[i] instanceof JComponent) {
label = findLabel((JComponent) comps[i], s);
if (label != null) {
break;
}
}
}
}
return label;
}