日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

转:JTable添加单元格改变事件

發(fā)布時(shí)間:2023/12/13 综合教程 30 生活家
生活随笔 收集整理的這篇文章主要介紹了 转:JTable添加单元格改变事件 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在使用Jtable得時(shí)候,當(dāng)然是我自己在使用得時(shí)候,查了下API沒有發(fā)現(xiàn)如何監(jiān)聽某個(gè)單元格得值是否被修改過了,如果那位仁兄知道怎么直接添加監(jiān)聽還望多多指教。

JTable得單元格(cell)在渲染得時(shí)候使用得是默認(rèn)得DefaultTableCellRenderer。其返回的Component是繼承了 JLabel得組件,所以直接使用默認(rèn)得渲染器對(duì)其內(nèi)容的更改顯得力不從心。其監(jiān)聽主要在他得CellEditor上面JTable使用的默認(rèn)得編輯器為 JTextField,這樣你就可以重新添加編輯器即繼承DefaultCellEditor然后給其添加一定得監(jiān)聽事件后在對(duì)jtable添加編輯器, 單這樣做我感覺過于過于繁瑣。在單元格進(jìn)行編輯的時(shí)候會(huì)觸發(fā)TablechangEvent 事件,Tablechange事件提供了幾種觸發(fā)事件得類型主要分為:

1.insert

2.update

3.delete

如果要對(duì)其某個(gè)單元格得內(nèi)容是否真得發(fā)生了更改得話只有選擇update類型,但其監(jiān)聽得事件是在你雙擊進(jìn)入編輯狀態(tài)后不管有沒有對(duì)數(shù)據(jù)進(jìn)行更改都會(huì)觸發(fā) 此事件。如果我們能獲得進(jìn)入編輯狀態(tài)前和編輯狀態(tài)完成后得內(nèi)容是很容易確定其內(nèi)容是否真得進(jìn)行過更改得。

首先對(duì)Jtable添加TableModelListener方法如下

JTable t = new JTable();

String oldvalue = null;//定義全局變量用于記錄編輯前得內(nèi)容

t.getModel().addTableModelListener(new TableModelListener(){

public void tableChanged(TableModelEvent e) {
if(e.getType() == TableModelEvent.UPDATE){
/*
* do some thing 獲得編輯后單元格得值
*/

String newvalue = t.getValueAt(e.getLastRow(),e.getColumn()).toString();

if(!newvalue.equals(oldvalue)){

/*
*call the value changed metod;

*/

}


}

}

});

這樣就可以對(duì)其是否進(jìn)入過編輯狀態(tài)有了監(jiān)聽,然后在給其添加mouselistener就可以對(duì)其進(jìn)去編輯狀態(tài)前得情況進(jìn)行記錄

t.addMouseListener(new MouseAdapter(){

public void mouseClicked(MouseEvent e){

//記錄進(jìn)入編輯狀態(tài)前單元格得數(shù)據(jù)

oldvalue = t.getValueAt(t.getSelectedRow(),t.getSelectedColumn()).toString();

}

});

另參考:http://blog.sina.com.cn/s/blog_63e95ee70100nz1p.html

總結(jié)

以上是生活随笔為你收集整理的转:JTable添加单元格改变事件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。