使用DefaultTableModel将项目ArrayList到JTable的步骤如下:
下面是一个示例代码,演示如何使用DefaultTableModel将项目ArrayList到JTable:
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中的数据添加到表格中。你可以根据实际需求修改表格的列名和项目数据。
北极星训练营
腾讯云GAME-TECH沙龙
高校公开课
小程序云开发官方直播课(应用开发实战)
玩转 WordPress 视频征稿活动——大咖分享第1期
T-Day
云+社区沙龙online第6期[开源之道]
开箱吧腾讯云
领取专属 10元无门槛券
手把手带您无忧上云