黑马程序员技术交流社区
标题:
Frame窗口查找输出目录信息
[打印本页]
作者:
franksight
时间:
2015-2-3 17:33
标题:
Frame窗口查找输出目录信息
import java.awt.*;
import java.awt.event.*;
import java.io.*;
class MyWindowDemo
{
private Frame f;
private TextField tf;
private Button but;
private TextArea ta;
private Dialog d;
private Label lab;
private Button okBut;
MyWindowDemo()
{
init();
}
public void init()
{
f=new Frame("my window");
f.setBounds(300,100,600,500);
f.setLayout(new FlowLayout());
tf=new TextField(60);
but=new Button("转到");
ta=new TextArea(25,70);
//设置d的基本信息
d=new Dialog(f,"提示信息",true);
d.setBounds(300,200,240,200);
d.setLayout(new FlowLayout());
lab=new Label();
okBut=new Button("确定");
//将lab,OKBut加入到d(即提示信息框)中
d.add(lab);
d.add(okBut);
f.add(tf);
f.add(but);
f.add(ta);
myEvent();
f.setVisible(true);
}
private void myEvent()
{
okBut.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
d.setVisible(false);
}
});
//提示信息框的'X'
d.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
d.setVisible(false);
}
});
//如果焦点在tf中,按enter键,显示目录信息
tf.addKeyListener(new KeyAdapter()
{
public void keyPressed(KeyEvent e)
{
if(e.getKeyCode()==KeyEvent.VK_ENTER)
showDir();
}
});
//点击'转到' 按钮,显示目录信息
but.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
showDir();
}
});
//点击窗口的'X',则关闭退出
f.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
}
//显示目录信息
private void showDir()
{
String dirPath=tf.getText();//获取tf的文本信息
File dir=new File(dirPath);
if(dir.exists()&&dir.isDirectory())
{
//若dir存在且是目录,则把ta的文本内容设置为空
ta.setText("");
String[] names=dir.list();
for(String name:names)
{
ta.append(name+"\r\n");
}
}else
{
//否则弹出错误提示信息
String info="您输入的信息:\""+dirPath+"\" 是错误的";
lab.setText(info);
d.setVisible(true);
}
}
public static void main(String[] args)
{
new MyWindowDemo();
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2