JAVA中怎么把list或map里的值动态添加至JTable
我定义了两个全局数组StringrentalBar[]={"车牌号","车型","颜色","使用时间","日租金","卡车载重"};//这是JTable列标题String...
我定义了两个全局数组
String rentalBar[] = {"车牌号","车型","颜色","使用时间","日租金","卡车载重"};//这是JTable列标题
String returnDatabase[][] = {{"","","","","",""}};
构造函数里实例化了一个JTable将数组添加至,具体就不写了:
rentalTable = new JTable(rentalDatabase,rentalBar);
然后有一个信息录入面板,录入信息种类跟上面renalBar数组中的各个元素一致
当我点击按钮提交信息时,各个种类的信息添加至list
protected void add_ActionPerformed(ActionEvent e){
DatebaseManager dm = new DatebaseManager();
Vehicle car = new Car();
Truck truck = new Truck();
String licensePlateNumber = newCarTitleTF[0].getText();
String arctic = newCarTitleTF[1].getText();
String color = colorChoice.getSelectedItem().toString();
String hoursOfuse = newCarTitleTF[3].getText();
String rentOfday = newCarTitleTF[4].getText();
String truckLoad = newCarTitleTF[4].getText();
if(choiceCarOrTruck()){
car.setLicensePlateNumber(licensePlateNumber);
car.setArctic(arctic);
car.setColor(color);
car.setHoursOfuse(hoursOfuse);
car.setRentOfday(rentOfday);
boolean isAdd = dm.addToDatebase(list, car);
if(isAdd){
JOptionPane.showMessageDialog(this, "添加轿车成功!", null,JOptionPane.INFORMATION_MESSAGE);
System.out.println(list);
}else{
JOptionPane.showMessageDialog(this, "添加轿车失败!", null,JOptionPane.WARNING_MESSAGE);
}
}else{
truck.setLicensePlateNumber(licensePlateNumber);
truck.setArctic(arctic);
truck.setColor(color);
truck.setHoursOfuse(hoursOfuse);
truck.setRentOfday(rentOfday);
truck.setTruckLoad(truckLoad);
boolean isAdd = dm.addToDatebase(list, truck);
if(isAdd){
JOptionPane.showMessageDialog(this, "添加卡车成功!", null,JOptionPane.INFORMATION_MESSAGE);
System.out.println(list);
}else{
JOptionPane.showMessageDialog(this, "添加卡车失败!", null,JOptionPane.WARNING_MESSAGE);
}
}
}
问题来了,我实例化了一个刷新按钮,如何实现点击刷新按钮后就将list中的对象的属性值展示到JTable? 展开
String rentalBar[] = {"车牌号","车型","颜色","使用时间","日租金","卡车载重"};//这是JTable列标题
String returnDatabase[][] = {{"","","","","",""}};
构造函数里实例化了一个JTable将数组添加至,具体就不写了:
rentalTable = new JTable(rentalDatabase,rentalBar);
然后有一个信息录入面板,录入信息种类跟上面renalBar数组中的各个元素一致
当我点击按钮提交信息时,各个种类的信息添加至list
protected void add_ActionPerformed(ActionEvent e){
DatebaseManager dm = new DatebaseManager();
Vehicle car = new Car();
Truck truck = new Truck();
String licensePlateNumber = newCarTitleTF[0].getText();
String arctic = newCarTitleTF[1].getText();
String color = colorChoice.getSelectedItem().toString();
String hoursOfuse = newCarTitleTF[3].getText();
String rentOfday = newCarTitleTF[4].getText();
String truckLoad = newCarTitleTF[4].getText();
if(choiceCarOrTruck()){
car.setLicensePlateNumber(licensePlateNumber);
car.setArctic(arctic);
car.setColor(color);
car.setHoursOfuse(hoursOfuse);
car.setRentOfday(rentOfday);
boolean isAdd = dm.addToDatebase(list, car);
if(isAdd){
JOptionPane.showMessageDialog(this, "添加轿车成功!", null,JOptionPane.INFORMATION_MESSAGE);
System.out.println(list);
}else{
JOptionPane.showMessageDialog(this, "添加轿车失败!", null,JOptionPane.WARNING_MESSAGE);
}
}else{
truck.setLicensePlateNumber(licensePlateNumber);
truck.setArctic(arctic);
truck.setColor(color);
truck.setHoursOfuse(hoursOfuse);
truck.setRentOfday(rentOfday);
truck.setTruckLoad(truckLoad);
boolean isAdd = dm.addToDatebase(list, truck);
if(isAdd){
JOptionPane.showMessageDialog(this, "添加卡车成功!", null,JOptionPane.INFORMATION_MESSAGE);
System.out.println(list);
}else{
JOptionPane.showMessageDialog(this, "添加卡车失败!", null,JOptionPane.WARNING_MESSAGE);
}
}
}
问题来了,我实例化了一个刷新按钮,如何实现点击刷新按钮后就将list中的对象的属性值展示到JTable? 展开
4个回答
2015-12-10 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
JTable的setModel方法即可
以JTable为例,API中说明如下:
public void setModel(TableModel dataModel)
将此表的数据模型设置为 newModel,并向其注册以获取来自新数据模型的侦听器通知。
参数:
dataModel - 此表的新数据源,TableModel 接口指定了 JTable 用于询问表格式数据模型的方法。定义了表格要展示的数据,并控制是否允许修改,数据更新的监听。
提示:具体代码以具体业务中的逻辑而编写,所以无法给出具体代码,代码可自行百度搜索!
以JTable为例,API中说明如下:
public void setModel(TableModel dataModel)
将此表的数据模型设置为 newModel,并向其注册以获取来自新数据模型的侦听器通知。
参数:
dataModel - 此表的新数据源,TableModel 接口指定了 JTable 用于询问表格式数据模型的方法。定义了表格要展示的数据,并控制是否允许修改,数据更新的监听。
提示:具体代码以具体业务中的逻辑而编写,所以无法给出具体代码,代码可自行百度搜索!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-12-20
展开全部
private DefaultTableModel listRecords = null; //类变量
private String []headings={"姓名", "年龄", "班级", "学校"};
void init(){
listRecords= new DefaultTableModel(null, this.headings);//初始化,headings是标题的数组
jtable.setModel(this.listRecords);//初始化表格
..............
}
在要添加数据的时候,调用
listRecords.addRow(xxxx);//参数是数组,表示一行。数组和标题一样的长度。
private String []headings={"姓名", "年龄", "班级", "学校"};
void init(){
listRecords= new DefaultTableModel(null, this.headings);//初始化,headings是标题的数组
jtable.setModel(this.listRecords);//初始化表格
..............
}
在要添加数据的时候,调用
listRecords.addRow(xxxx);//参数是数组,表示一行。数组和标题一样的长度。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
DefaultTableModel 中有addColumn方法可以添加列,然后JTable中有setModel方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询