zoukankan      html  css  js  c++  java
  • [javaSE] GUI(练习-列出指定目录内容)

    获取Frame对象

    获取TextField对象

    获取TextArea对象

    获取Button对象

    调用Frame对象的add()方法,添加进去

    调用TextField对象的getText()方法,可以获取文本框内的数据

    调用TextArea对象的setText()方法,设置文本数据

    列目录

    获取到文本框中的路径,包装成File对象

    调用File对象的list()方法,可以得到String[]文件名数组

    import java.awt.Button;
    import java.awt.FlowLayout;
    import java.awt.Frame;
    import java.awt.TextArea;
    import java.awt.TextField;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    import java.io.File;
    
    public class FrameDemo {
        private Frame frame;
        private TextField tf;
        private TextArea ta;
        private Button button;
    
        public FrameDemo() {
            init();
        }
    
        /**
         * 初始化
         */
        public void init() {
            frame = new Frame("测试窗体");
            frame.setBounds(300, 200, 300, 400);
            frame.setLayout(new FlowLayout());
    
            tf = new TextField(20);
            button = new Button("转到");
            ta = new TextArea(30, 30);
            frame.add(button);
            frame.add(tf);
            frame.add(ta);
            frame.setVisible(true);
    
            addEventAction();
        }
    
        /**
         * 添加事件
         */
        public void addEventAction() {
            // 退出
            frame.addWindowListener(new WindowAdapter() {
                @Override
                public void windowClosing(WindowEvent e) {
                    System.exit(0);
                }
            });
            // action事件
            button.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    String dirName = tf.getText();
                    File file = new File(dirName);
    
                    if (!file.isDirectory() || !file.exists()) {
                        ta.setText("目录不存在");
                        return;
                    }
    
                    String[] files = file.list();
                    StringBuilder sb = new StringBuilder();
                    for (String name : files) {
                        sb.append(name);
                        sb.append("
    ");
                    }
                    ta.setText(sb.toString());
                }
            });
        }
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            new FrameDemo();
        }
    
    }

  • 相关阅读:
    moment JS 时间操作指南
    react 项目使用 echarts-wordcloud(文字云)
    moment实现计算两个时间的差值
    JS实现回到页面顶部的五种写法(从实现到增强)
    关于谷歌浏览器携带cookie失效解决方案
    Axios发送请求下载文件(重写二进制流文件)
    修改 input / textarea placeholder 属性的颜色和字体大小
    js实现数组浅拷贝和深拷贝
    JS中的可枚举属性与不可枚举属性
    物流管理
  • 原文地址:https://www.cnblogs.com/taoshihan/p/5582300.html
Copyright © 2011-2022 走看看