Java图形界面开发—列出指定目录


代码如下:

package com.packageTemp;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.event.*;
import java.io.*;

/*
 * 功能:做一个类似于文件。输入目录,在下边显示其中的文件
 * author:ywq
 */

public class FileTest {
	
	//定义组件
	JFrame f;
	JPanel jp;
	JLabel jlb;
	JTextField jtf;
	JButton btn;
	JTextArea jta;
	
	//构造函数
	FileTest()
	{
		//调用初始化函数
		init();
	}
	
	//初始化函数,进行初始化
	public void init()
	{
		f=new JFrame("我的界面");
		jp=new JPanel();
		jtf=new JTextField(25);
		jlb=new JLabel("请输入文件路径:");
		btn=new JButton("转到");
		jta=new JTextArea(30,70);
		
		jp.add(jlb);
		jp.add(jtf);
		jp.add(btn);
		jp.add(jta);
		
		f.add(jp);
		
		f.setBounds(200, 300, 500, 300);
		f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		f.setVisible(true);
		
		//调用事件方法
		myevent();
		
	}
	
	//事件处理方法
	public void myevent()
	{
		//点击按钮出发事件
		btn.addActionListener(new ActionListener(){

			@Override
			public void actionPerformed(ActionEvent e) {
				
				show();
				
			}
			
			
		});
		
		//点击回车键直接进行操作
		jtf.addKeyListener(new KeyAdapter(){
			
			public void keyPressed(KeyEvent e){
				if(e.getKeyCode()==KeyEvent.VK_ENTER)
				{
					show();
				}
			}
		});
	}
	//将操作封装为一个函数
	public void show()
	{
		String dirPath=jtf.getText();
		
		File dir=new File(dirPath);
		jtf.setText("");
		//如果路径正确,则进行遍历操作
		if(dir.exists()&&dir.isDirectory())
		{
			jta.setText("");
			String[] names=dir.list();
			for(String name:names)
			{
				jta.append(name+"\r\n");
			}
		}else
		{
			JOptionPane.showMessageDialog(null, "error...");
			System.out.println("error");
		}
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		new FileTest();
	}

}



posted on 2016-05-17 20:58  岚之山  阅读(372)  评论(0编辑  收藏  举报

导航