首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用DefaulTableModel将项目ArrayList到JTable

使用DefaultTableModel将项目ArrayList到JTable的步骤如下:

  1. 创建一个DefaultTableModel对象,该对象将用于存储表格数据。
  2. 创建一个String数组,用于存储表格的列名。
  3. 将列名数组传递给DefaultTableModel的构造函数,以创建一个带有指定列名的表格模型。
  4. 创建一个ArrayList对象,用于存储项目数据。
  5. 遍历项目ArrayList,将每个项目的数据存储在一个Object数组中。
  6. 将每个Object数组添加到DefaultTableModel中,以添加项目数据到表格模型。
  7. 创建一个JTable对象,并将DefaultTableModel对象设置为其数据模型。
  8. 将JTable添加到一个JScrollPane中,以支持滚动功能。
  9. 将JScrollPane添加到一个容器中,以显示表格。

下面是一个示例代码,演示如何使用DefaultTableModel将项目ArrayList到JTable:

代码语言:txt
复制
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.util.ArrayList;

public class ProjectTableExample extends JFrame {
    private JTable table;
    private DefaultTableModel tableModel;

    public ProjectTableExample() {
        // 创建表格列名数组
        String[] columnNames = {"项目名称", "项目描述", "开始日期", "结束日期"};

        // 创建表格模型
        tableModel = new DefaultTableModel(columnNames, 0);

        // 创建项目ArrayList并添加数据
        ArrayList<Project> projects = new ArrayList<>();
        projects.add(new Project("项目1", "这是项目1的描述", "2022-01-01", "2022-01-31"));
        projects.add(new Project("项目2", "这是项目2的描述", "2022-02-01", "2022-02-28"));
        projects.add(new Project("项目3", "这是项目3的描述", "2022-03-01", "2022-03-31"));

        // 将项目数据添加到表格模型
        for (Project project : projects) {
            Object[] rowData = {project.getName(), project.getDescription(), project.getStartDate(), project.getEndDate()};
            tableModel.addRow(rowData);
        }

        // 创建JTable并设置数据模型
        table = new JTable(tableModel);

        // 创建JScrollPane并添加JTable
        JScrollPane scrollPane = new JScrollPane(table);

        // 设置窗口布局和添加JScrollPane
        setLayout(new BorderLayout());
        add(scrollPane, BorderLayout.CENTER);

        setTitle("项目表格");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        pack();
        setLocationRelativeTo(null);
        setVisible(true);
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(ProjectTableExample::new);
    }

    // 项目类
    private static class Project {
        private String name;
        private String description;
        private String startDate;
        private String endDate;

        public Project(String name, String description, String startDate, String endDate) {
            this.name = name;
            this.description = description;
            this.startDate = startDate;
            this.endDate = endDate;
        }

        public String getName() {
            return name;
        }

        public String getDescription() {
            return description;
        }

        public String getStartDate() {
            return startDate;
        }

        public String getEndDate() {
            return endDate;
        }
    }
}

这个示例代码创建了一个包含项目名称、项目描述、开始日期和结束日期的表格,并使用DefaultTableModel将项目ArrayList中的数据添加到表格中。你可以根据实际需求修改表格的列名和项目数据。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券