关于javaswing table的数据动态更新

  一直用web写程序,最近有同学交我帮忙写个java软件,写前端时用了swing,发现swing里面的小细节非常多,比如列表,表格的动态更新什么的,细节很重要,一个不小心整个界面都崩溃,显示不出来。

  由于我写的软件需要定时刷新界面,所以需要对JTable进行实时更新,对于动态更新其实最简单的,就是用 Vector 做 table 的模型,只要改变 Vector 中的数据,updateUI,表格就刷新了。其中,第一个是个 Vector 的 Vector,是 data,就是说先把一行的 data 放在一个 Vector 里,然后把这些行Vector 放到一个总的 Vector 里,而第二个是 Vector是title。

  以下为简单的代码:

  

                Vector<String> columnNames = new Vector<String>(); //设置列名
		columnNames.add("活动事项");
		columnNames.add("日期");
		columnNames.add("资金流动");
		columnNames.add("资金流动说明");
		columnNames.add("参与人员");
		
		
		rowData = new Vector<String>();
		Vector hang = new Vector();//设置每一行的值			
		hang.add("data"]);
		hang.add("data[1"]);
		hang.add("data[2]");
		hang.add("data[3]");
		hang.add("data[4]");
		rowData.add(hang);//加入rowData中
		defaultTableModel   = new DefaultTableModel(rowData, columnNames);
		table = new JTable(defaultTableModel);

      接下来我们要动态加入一条数据,代码如下:

  

                        rowData = ........方法如上,加入新的数据。
                        defaultTableModel.getDataVector().clear();
              defaultTableModel.setDataVector(rowData, columnNames); table.updateUI();

        这样就能动态的往表格之中添加入一条新的数据,并且显示。

  

转载于:https://www.cnblogs.com/zqy-blogzone/p/6545245.html

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值