A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陈红建 中级黑马   /  2012-8-9 09:03  /  1260 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 陈红建 于 2012-8-9 09:05 编辑

  1. import java.awt.*;
  2. import java.awt.event.*;
  3. import java.io.*;

  4. //这是一个窗体现实目录中的文件


  5. class MyWin extends WindowAdapter //继承WindowAdapter子类,并覆盖他的windowClosing方法
  6. {
  7.         public void windowClosing(WindowEvent e)//窗口事件处理
  8.         {
  9.                 System.out.println("我被关闭了!");
  10.                 System.exit(0);
  11.         }
  12.         public void windowActivated(WindowEvent e)
  13.         {
  14.                 System.out.println("我被激活了!");
  15.         }
  16.         
  17. }


  18. class CreateWindow
  19. {
  20.         
  21.         private String WindowName;
  22.         private int width;
  23.         private int height;
  24.         private int x;
  25.         private int y;
  26.         private Frame f;
  27.         private TextArea ta;
  28.         private TextField text;
  29.         private Button b;
  30.         private Dialog dia;
  31.         private Label lab;
  32.         private Button OK;
  33.         Runtime run=Runtime.getRuntime();//添加可执行
  34.         Process p=null;
  35.         class KeyOK implements KeyListener
  36.         {
  37.                 public void keyPressed(KeyEvent e)
  38.                 {
  39.                          if(e.getKeyCode()==KeyEvent.VK_ENTER)
  40.                         dia.setVisible(false);
  41.                 }

  42.                 public void keyTyped(KeyEvent e) {
  43.                         // TODO Auto-generated method stub
  44.                         
  45.                 }

  46.                 public void keyReleased(KeyEvent e) {
  47.                         // TODO Auto-generated method stub
  48.                         
  49.                 }
  50.                
  51.         }
  52.         class KeyText implements KeyListener
  53.         {

  54.                 public void keyTyped(KeyEvent e) {
  55.                         // TODO Auto-generated method stub
  56.                         
  57.                 }

  58.                 public void keyPressed(KeyEvent e) {
  59.                         // TODO Auto-generated method stub
  60.                         String dirpath=text.getText();
  61.                         File dir=new File(dirpath);
  62.                          if(e.getKeyCode()==KeyEvent.VK_ENTER)
  63.                         
  64.                         
  65.                         
  66.                         if(dir.exists() && dir.isDirectory())
  67.                         {
  68.                                 ta.setText("");
  69.                                 String names[]=dir.list();
  70.                                 for(String name:names)//从 names数组里面取值赋给name
  71.                                 {
  72.                                         ta.append(name+"\r\n");
  73.                                 }
  74.                         
  75.                          }
  76.                         else if (dir.isFile())
  77.                         {
  78.                                 try {
  79.                                         p=run.exec("cmd /c start "+dirpath);
  80.                                 } catch (IOException e1) {
  81.                                        
  82.                                         e1.printStackTrace();
  83.                                 }
  84.                         }
  85.                         else
  86.                         {        
  87.                                 String info=dirpath+"输入错误";
  88.                                 lab.setText(info);
  89.                                 dia.setVisible(true);
  90.                         }
  91.                 }

  92.                 public void keyReleased(KeyEvent e) {
  93.                         // TODO Auto-generated method stub
  94.                         
  95.                 }
  96.                
  97.         }
  98.         CreateWindow(String WindowName,int width,int height,int x,int y)
  99.         {
  100.                 this.WindowName=WindowName;
  101.                 this.width=width;
  102.                 this.height=height;
  103.                 this.x=x;
  104.                 this.y=y;
  105.         }
  106.         public void CreateWindows()
  107.         {
  108.                  f=new Frame(WindowName);
  109.                  f.setBounds(x, y, width, height);
  110.                  f.setLayout(new FlowLayout(1));//设置布局
  111.                  ta=new TextArea(20,60);
  112.                  text=new TextField(30);
  113.                  b=new Button("转到");
  114.                  
  115.                  dia=new Dialog(f,"提示信息",true);//初始化一个对话框true设置消息窗口为模态显示就是独占方式显示
  116.                  dia.setLayout(new FlowLayout());
  117.                  dia.setBounds(400, 200, 240,150 );
  118.                  lab=new Label();
  119.                  OK=new Button("确定");
  120.                  b.addKeyListener(new KeyText());
  121.                  
  122.                 text.addKeyListener(new KeyText());
  123.                  OK.addKeyListener(new KeyOK());
  124.                  OK.addActionListener(new ActionListener()
  125.                  {

  126.                         public void actionPerformed(ActionEvent e) {
  127.                                 // TODO Auto-generated method stub
  128.                                 dia.setVisible(false);
  129.                         }
  130.                           
  131.                  });
  132.                  dia.addWindowListener(new WindowListener()
  133.                  {

  134.                         
  135.                         public void windowClosing(WindowEvent e) {
  136.                                 // TODO Auto-generated method stub
  137.                                 dia.setVisible(false);
  138.                         }

  139.                         public void windowOpened(WindowEvent e) {
  140.                                 // TODO Auto-generated method stub
  141.                                 
  142.                         }

  143.                         public void windowClosed(WindowEvent e) {
  144.                                 // TODO Auto-generated method stub
  145.                                 
  146.                         }

  147.                         public void windowIconified(WindowEvent e) {
  148.                                 // TODO Auto-generated method stub
  149.                                 
  150.                         }

  151.                         public void windowDeiconified(WindowEvent e) {
  152.                                 // TODO Auto-generated method stub
  153.                                 
  154.                         }

  155.                         public void windowActivated(WindowEvent e) {
  156.                                 // TODO Auto-generated method stub
  157.                                 
  158.                         }

  159.                         public void windowDeactivated(WindowEvent e) {
  160.                                 // TODO Auto-generated method stub
  161.                                 
  162.                         }
  163.                         
  164.                  });
  165.                  b.addActionListener
  166.                  (
  167.                                  new ActionListener()
  168.                  {

  169.                         public void actionPerformed(ActionEvent e)
  170.                         {
  171.                                 // TODO Auto-generated method stub
  172.                                 String dirpath=text.getText();
  173.                                 File dir=new File(dirpath);
  174.                                 if(dir.exists() && dir.isDirectory())
  175.                                 {
  176.                                         ta.setText("");
  177.                                         String names[]=dir.list();
  178.                                         for(String name:names)//从 names数组里面取值赋给name
  179.                                         {
  180.                                                 ta.append(name+"\r\n");
  181.                                         }
  182.                                 }
  183.                                 else if (dir.isFile())
  184.                                 {
  185.                                        <FONT color=red> //我想要在这里是实现一个运行可执行文件的代码应该怎么做啊
  186.                                         //还有判断文件的类型
  187.                                         //在这里可以运行一些例如图片什么的</FONT><FONT color=blue>  搞什么啊 代码都加不上颜色?</FONT>                            }
  188.                                 else
  189.                                 {        
  190.                                         String info=dirpath+"输入错误";
  191.                                         lab.setText(info);
  192.                                         dia.setVisible(true);
  193.                                 }
  194.                                 
  195.                                 
  196.                         }
  197.                         
  198.                  }
  199.                  );
  200.                  
  201.                  dia.add(lab);
  202.                  dia.add(OK);
  203.                  f.add(text);
  204.                  f.add(b);
  205.                  f.add(ta);
  206.                   f.addWindowListener(new MyWin());
  207.              f.setVisible(true);
  208.         }
  209.         
  210. }
  211. class TextDemo
  212. {
  213.         public static void main(String args[])
  214.         {
  215.                 CreateWindow c=        new CreateWindow("我的窗口",500,400,100,300);//窗体标题,长,宽,x,y显示坐标
  216.                 c.CreateWindows();
  217.         }
  218.         
  219. }
复制代码

1 个回复

倒序浏览
申请加分
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马