中易网

JavaSwing里面的Jtable 可以从显示的表格数据里面 通过选定某一行,再获取到所选定的行的每一列数据吗?

答案:1  悬赏:40  
解决时间 2021-03-15 18:08
可以的话最好能够给我一个Demo



最佳答案
参考以下代码:
JTable.getSelectedColumn()
JTable theTable = new JTable();//your table
boolean pressingCTRL=false;//flag, if pressing CTRL it is true, otherwise it is false.
Vector selectedCells = new Vector<int[]>();//int[]because every entry will store {cellX,cellY}

public void something(){
KeyListener tableKeyListener = new KeyAdapter() {

@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_CTRL){//check if user is pressing CTRL key
pressingCTRL=true;
}
}

@Override
public void keyReleased(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_CTRL){//check if user released CTRL key
pressingCTRL=false;
}
}
};

MouseListener tableMouseListener = new MouseAdapter() {

@Override
public void mouseClicked(MouseEvent e) {
if(pressingCTRL){//check if user is pressing CTRL key
int row = theTable.rowAtPoint(e.getPoint());//get mouse-selected row
int col = theTable.columnAtPoint(e.getPoint());//get mouse-selected col
int[] newEntry = new int[]{row,col};//{row,col}=selected cell
if(selectedCells.contains(newEntry)){
//cell was already selected, deselect it
selectedCells.remove(newEntry);
}else{
//cell was not selected
selectedCells.add(newEntry);
}
}
}
};
theTable.addKeyListener(tableKeyListener);
theTable.addMouseListener(tableMouseListener);
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
苹果5跟苹果5s5c怎么分别
钟营村在什么地方啊,我要过去处理事情
麻烦大家给我想个CF名字、5个字的、要求前面2
淘宝一件代销 代发需不需要交其他费用
我买了一个铃铛,怎么装在我的山地车上面
涪陵哪里有卖监控立杆
茶都木客这个地址在什么地方,我要处理点事
梦见死去的公公来到他大儿子家住
如果一个男的每天就会在网上跟你聊几句早安晚
我的电脑玩龙之谷还是有点卡画质不敢开太高,
《最成功的一课》阅读答案
成功大道我想知道这个在什么地方
人们常说的足球游戏“FM,CM,PS”到底是什么意
急!!!关于银行现金付出传票的问题!!
新买的储存卡宾得k5 没办法用
推荐资讯
学校应聘生活老师吗
求超悲伤,轻轻的,而且前奏很长的中文歌曲
左手戴玉镯右手戴玉珠可以吗
皮皮托幼园地址在哪,我要去那里办事
林记沙湾航空地址在什么地方,想过去办事
苹果手机有USB连接口么?
野狐岭建云农家院这个地址在什么地方,我要处
请谁知道JVC520摄像机出现结露提示,不让工作
大观岭地址在什么地方,想过去办事
买工商银行理财产品需要去营业网点做风险评估
eve一个单收猎犬要多少技能点?
《向着月亮奔跑》阅读标准答案 急急急!!!
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?