标签:
将指定目录下的所有文件显示到列表框(JList)组件中,
:效果图如下:
import java.awt.BorderLayout; import java.io.File; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JList; import javax.swing.JScrollPane; public class kuang { public static void listDrectory(File dir) throws IllegalAccessException { JFrame frm =new JFrame("下拉组合框"); frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frm.setLayout(new BorderLayout()); String[] likes ={"all formats",".jpg",".wps",".doc",".ppt",".xls"}; JComboBox jb1=new JComboBox(likes); frm.add(jb1, BorderLayout.NORTH); frm.setBounds(550,190,260,360); frm.setVisible(true); //判断传递进来的是否是文件(目录)是否存在 if (!dir.exists()) { throw new IllegalAccessException("目录" + dir + "不存在"); } //判断传递进来的是否是目录 if (!dir.isDirectory()) { throw new IllegalAccessException(dir + "不是目录"); } //使用File类中list()方法返列出当前目录下的所有文件(目录)名 String[] fileNames = dir.list(); JList l1=new JList(fileNames); JScrollPane sp=new JScrollPane(l1);//把JList放到滚动条里,把滚动条放到布局中心 frm.add(sp,BorderLayout.CENTER); // for(String s :fileNames ){ // System.out.println(dir + "\\" +s); //输出完整的文件目录名称 // } // //列出指定目录(包括其子目录)下的所有文件(文件夹) // File[] fs = dir.listFiles(); // for (File file:fs) { // if (file.isDirectory()) { // //递归 // listDrectory(file); // }else { // System.out.println(dir + "\\" +file); // String[] fileNames = dir.list(); // JList jl =new JList(fileNames); // jl.setForeground(new Color(140,171,226)); // jl.setBackground(new Color(0,0,0)); // jl.setSelectionBackground(new Color(87,49,134)); // jl.setSelectionForeground(new Color(140,171,226)); // JScrollPane sp=new JScrollPane(jl); // frm.add(sp,BorderLayout.CENTER); } /** * @param args */ public static void main(String[]args){ // TODO Auto-generated method stub try { kuang.listDrectory(new File("C:\\Users\\think\\Desktop\\1")); } catch (IllegalAccessException e) { // TODO: handle exception e.printStackTrace(); } } }
标签:
原文地址:http://www.cnblogs.com/521xyh/p/5397162.html