• JAVA第五次作业


    使用组件JList完成用列表组件显示指定文件内容

    import java.awt.*;
    import java.io.File;
    import java.util.ArrayList;
    import java.util.List;
    import javax.swing.*;


    public class liebiao extends JFrame {
    private static final String music = "file";
    private JFrame frame;
    private JList fileList;

    public liebiao() {

    String[] FileNames = findFiles(music, null);
    makeFrame(FileNames);
    frame.pack();
    frame.setVisible(true);
    frame.setSize(250, 380);
    frame.setLocation(550, 400);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

    private String[] findFiles(String dirName, String suffix) {
    File dir = new File(dirName);
    if (dir.isDirectory()) {
    String[] allFiles = dir.list();
    if (suffix == null) {
    return allFiles;
    } else {
    List<String> selected = new ArrayList<String>();
    for (String filename : allFiles) {
    if (filename.endsWith(suffix)) {
    selected.add(filename);
    }
    }
    return selected.toArray(new String[selected.size()]);
    }
    } else {
    System.out.println("Error: " + dirName + " must be a directory");
    return null;
    }
    }

    private void makeFrame(String[] audioFiles) {

    frame = new JFrame();
    setDefaultCloseOperation(EXIT_ON_CLOSE);

    JPanel contentPane = (JPanel) getContentPane();


    contentPane.setLayout(new BorderLayout(8, 8));

    JPanel leftPane = new JPanel();
    {
    leftPane.setLayout(new BorderLayout(8, 8));

    fileList = new JList(audioFiles);
    fileList.setForeground(new Color(140, 171, 226));
    fileList.setBackground(new Color(0, 0, 0));
    fileList.setSelectionBackground(new Color(87, 49, 134));
    fileList.setSelectionForeground(new Color(140, 171, 226));
    JScrollPane scrollPane = new JScrollPane(fileList);
    scrollPane.setColumnHeaderView(new JLabel("files list"));
    leftPane.add(scrollPane, BorderLayout.CENTER);
    }
    contentPane.add(leftPane, BorderLayout.CENTER);
    frame.add(contentPane);
    }

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

    }

    }

  • 相关阅读:
    【QT】Linux下安装QT开发环境
    【C#】Winform嵌入dll到exe中
    使用maven插件构建docker镜像并推送到阿里镜像仓库
    蓝牙耳机连接 win10音量异常
    max virtual memory areas vm.max_map_count [65530] is too low
    docker 安装 confluence
    jenkins docker push脚本
    docker 删除指定名称的所有容器
    docker 安装 xxl-job-admin
    docker 安装 sentinel
  • 原文地址:https://www.cnblogs.com/ying1314/p/5397213.html
Copyright © 2020-2023  润新知