您的位置:首页 > 编程语言 > Java开发

java第五次作业

2016-04-15 13:40 766 查看
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.ScrollPane;
import java.io.File;

import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JScrollPane;
import javax.swing.ListSelectionModel;

public class Jlist {

/**
* 列出指定目录下的所有文件和子目录的名称
* @throws IllegalAccessException
*
*/
public static void listDirectory(File dir) throws IllegalAccessException{
//判断File对象dir是否存在,使用File类的exists()方法
if(!dir.exists()){
//如不存在,抛出异常
throw new IllegalAccessException("目录" + dir +"不存在");
}
//判断dir是否是目录,使用File类的isDirectory()方法
if(!dir.isDirectory()){
//如果dir不是目录,抛出异常
throw new IllegalArgumentException(dir + "不是目录");
}
//获得指定目录dir下的文件及子目录并输出(1.list();2.listFiles())
//使用list()方法实现
String[] fileName = dir.list();
for(String s :fileName){
System.out.println(dir + "\\"+ s);
}

System.out.println();
//使用listFiles()方法实现只列出目录下的所有文件名称
File[] files = dir.listFiles();
for(File file:files){
//如果是文件,则输出
if(file.isFile()){
System.out.println(file);
}
}

JFrame a =new JFrame("java第五次");
a.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
a.setLayout(new BorderLayout());
JLabel northLabel = new JLabel("files list");
a.add(northLabel,BorderLayout.NORTH);

JList list = new JList(files);
list.setForeground(new Color(140,171,226));
list.setBackground(Color.darkGray);
list.setSelectionBackground(new Color(87,49,134));
list.setSelectionForeground(new Color(140,171,226));

JScrollPane sp = new JScrollPane(list);
//
a.add(sp,BorderLayout.CENTER);
a.setBounds(400,200,400,200);

a.setVisible(true);
}
public static void main(String[] args) {
// TODO Auto-generated method stub

try {
Jlist.listDirectory(new File("D:\\"));
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}

}



总结:本次作业展现了如何读取磁盘文件,然后让文件显示在GUI中,在GUI中使用了页面布局、滚动条、背景颜色(灰色)设置。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: