- import java.awt.*;
- import java.awt.event.*;
- import java.io.File;
- public class FileList {
- //定义窗口
- private Frame frame;
- //定义单行文本
- private TextField frame_tf;
- // 跳转按钮
- private Button frame_but;
- // 多行文本
- private TextArea frame_ta;
- // 对话框
- private Dialog dialog ;
- //对话框的确定按钮
- private Button dialog_but;
- // 对话框上的文本标签
- private Label dialog_lbl;
- // 获取屏幕分辨率
- private static final int WIDTH=Toolkit.getDefaultToolkit().getScreenSize().width;
- private static final int HEIGHT=Toolkit.getDefaultToolkit().getScreenSize().height;
-
-
- //文件列表的构造函数
- public FileList(){
- // 初始化的函数
- init();
- }
- private void init(){
- // 初始化窗口
- frame=new Frame("文件列表");
- // 设置窗口的位置和大小
- frame.setBounds((WIDTH-600)/2, (HEIGHT-500)/2, 600, 500);
- // 设置背景
- frame.setBackground(new Color(202,232,237));
- // 清空布局
- frame.setLayout(null);
- // 显示窗口
- frame.setVisible(true);
-
- // 初始化化单行文本
- frame_tf=new TextField();
- // 设置单行文本的位置和大小
- frame_tf.setBounds(20,40, 400, 30);
- // 将单行文本添加进窗口
- frame.add(frame_tf);
-
- // 初始化跳转按钮
- frame_but=new Button("跳转");
- frame_but.setBounds(440,40 ,70 ,30 );
- frame.add(frame_but);
-
- // 初始化多行文本
- frame_ta=new TextArea();
- frame_ta.setBounds(20,85, 550, 400);
- frame.add(frame_ta);
-
- // 初始化对话框
- dialog=new Dialog(frame,"错误路径",true);
- dialog.setBounds((WIDTH-600)/2, (HEIGHT-150)/2, 600, 150);
- dialog.setLayout(null);
-
- // 初始化按钮
- dialog_but=new Button("确定");
- dialog_but.setBounds(320, 90, 50, 25);
- dialog.add(dialog_but);
-
- // 处理事件
- event();
- }
-
- // 事件的处理
- private void event(){
- // 窗口的关闭
- frame.addWindowListener(new WindowAdapter(){
- public void windowClosing(WindowEvent e){
- System.exit(0);
- }
- });
-
- // 按钮跳转
- frame_but.addMouseListener(new MouseAdapter() {
- public void mouseClicked(MouseEvent e){
- getDir();
- }
- });
-
- // 输入文本的键盘事件
- frame_tf.addKeyListener(new KeyAdapter() {
- public void keyPressed(KeyEvent e) {
- // 判断按下的是不是回车键
- int code=e.getKeyCode();
- if(code==KeyEvent.VK_ENTER)
- // 遍历目录
- getDir();
- }
- });
-
- // 定义对话框的关闭按钮
- dialog.addWindowListener(new WindowAdapter(){
- public void windowClosing(WindowEvent e){
- dialog.setVisible(false);
- }
- });
-
- // 定义对话框上的确定按钮
- dialog_but.addMouseListener(new MouseAdapter(){
- public void mouseClicked(MouseEvent e){
- dialog.setVisible(false);
- }
- });
- }
-
- //遍历目录
- public void getDir(){
- // 获取目录的路径
- String path=frame_tf.getText();
- if(path==null || "".equals(path))
- return ;
- // 将目录路径封装到File类中
- File file=new File(path);
- // 判断路径是否存在
- if(!file.exists()){
- // 初始化button
- dialog_lbl=new Label ("输入的路径:"+path+",有误");
- dialog_lbl.setBounds(120, 50, 300, 25);
- dialog.add(dialog_lbl);
- dialog.setVisible(true);
- }else{
- // 遍历目录
- // 追加到多行文本的时候,清空多行文本
- frame_ta.setText("");
- // 返回封装路径下的全路径
- File[] files=file.listFiles();
- for(File f:files){
- frame_ta.append(f+"\r\n");
- }
- }
-
- }
- }
复制代码- public class FileListTest {
- public static void main (String[] args){
- new FileList();
- }
- }
复制代码 |
|