• [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();
        }
    
    }

  • 相关阅读:
    容器常用命令
    镜像常用命令
    Docker安装
    Jenkins部署
    IIS配置伪静态 集成模式 样式丢失
    centos7 apache 配置ssl
    centOS7 关闭swap
    Presto集群部署和配置
    HDFS中将普通用户增加到超级用户组supergroup
    superset在 centos 7安装运行
  • 原文地址:https://www.cnblogs.com/taoshihan/p/5582300.html
Copyright © 2020-2023  润新知