永发信息网

JTable里怎么得到修改后单元格里的值

答案:2  悬赏:0  手机版
解决时间 2021-02-23 04:38
Java新手,对JTable知之甚少,现在做一个表格,比如说用户修改了表格中某一单元格的值,如何得到修改后的数据?

尝试用getValueAt(int r, int c),可是得到的还是修改以前的数据?

请问应该怎么写?有没有较通用的这方面的代码?是要用tablemodel么?
最佳答案
就是用getValueAt(int r, int c)啊!
用户一旦修改了表的数据,你在监听器里,得到那个table的对象,就可以之间用这个getValueAt方法的
如果还是修改之前的,可能有几个可能:
1.那条数据并没有真正的修改到了table中,这种情况也是最常见的错误
解决方法:
修改数据不能用简单的setValueAt()方法,而是应该对tablemodel里面的数据做修改,然后setModel(Model),这样传回去的table才是真正已经修改过数据的table,否则就不是,这也是大家都用的方法
2.自己的监听器写错了,可能在监听器里部分代码有问题

其他,应该没有问题了,你看下吧,估计是你的table数据没有真正的插入到table中,不是真正的修改数据,也就是说,你 没有用到setModel()方法,而是直接在界面上点击修改数据,没有用到监听器去setModel()
全部回答
如果认可,请您赏分 60分,谢谢 import javax.swing.*; import javax.swing.table.*; import java.awt.*; final class TableCellDemoFrame extends JFrame { private static final Dimension minSize = new Dimension(300, 200); private static final Dimension maxSize = new Dimension(1024, 768); private static final Dimension preferredSize = new Dimension(600, 400); public Dimension getMaximumSize() {return maxSize;} public Dimension getMinimumSize() {return minSize;} public Dimension getPreferredSize() {return preferredSize;} public String getTitle() {return "Table Cell DEMO";} private JTable table; private class _TableModel extends AbstractTableModel { private Color c0=Color.BLUE,c1=Color.RED; public String getColumnName(int column) { switch(column){ case 0:return "COLORS"; default:return ""; } } public Class<
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
双方都有签离婚协议书,且已经分居两年多了,
北宋元佑通宝篆书折三铁母 `狭背 `是什么意思
黎明杀机哪里下载或购买。
TNT为什么要改版?
盛顺酒家我想知道这个在什么地方
小明是一个八年级的学生,学习成绩很好,但是
车字旁有什么字
李孝利十分钟的拼音歌词(等于把韩语换成拼音
晴天.见我想知道这个在什么地方
安溪县泉州南星大酒店KTV这个地址在什么地方
从常州新北区春江镇到市社保中心怎么走
安阳县房地产开发公司在哪里啊,我有事要去这
先天性高位无肛门施行肛门成形手术,决定术后
你看过一本小说么?男主角叫王浩天的
格调生活家居灯饰在什么地方啊,我要过去处理
推荐资讯
施耐德PLC系统位%s12
岜观音我想知道这个在什么地方
鸿顺汽车租赁服务部在什么地方啊,我要过去处
荆州有飞往珠海的飞机吗?如果没有的该如何从
岷江二桥这个地址在什么地方,我要处理点事
亚马逊用什么快递
孔子作为儒家思想的创始人,其核心思想就是“
头发剪残了还能怎么补救
和未来婆婆之间聊什么话题最好
喝红糖水上火怎么办
福源山庄地址有知道的么?有点事想过去
“赣”下面一个“心”念什么是什么意思?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?