java怎么把jtable中的值全部取出

java怎么把jtable中的值全部取出,第1张

//得到选中的行

int

row

=

tablegetselectedrow();

//得到table中有几列

int

cell

=

tablegetmodel()getcolumncount();

//根据你想要的行和列去取值。方法如下:

//获取自己想要的列,这里我默认写0列注意填写的值不能大于cell

int

column

=

0;

object

selectedvalue

=

tablegetmodel()getvalueat(row,column);

//selectedvalue就是你想要的值

public javaxswingJTable sNameTable;//定义table

private DefaultTableModel tableModel = new JTableUtilDefaultTableModel();//定义Model

UpctableModelsetColumnIdentifiers(new String[] {"ID" ,"NAME" ,"AGE"});//定义表头

sNameTablesetModel(tableModel);//设置表格tableModel

//添加值

tableModel addRow(new Object[]{"1","CC","20"});

tableModel addRow(new Object[]{"2","DD","21"});

tableModel addRow(new Object[]{"3","DD","22"});

int row = sNameTablegetSelectedRow();//取得表格选中行

int sID = tableModel getValueAt(row, 2)toString());//取得表格选中行的AGE字段,如果选中第三行则,sID = "22"(表格从0标签开始)

谢谢,纯手敲,望采纳!

写一个类,继承DefaultTableCellRenderer,

重写它的

Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)

方法,,先获得这一行(row)的那一个int数据,如果大于100,就setBackground(ColorRED),小于100,setBackground(ColorBLUE);

tablesetDefaultRenderer(tablegetColumnClass(0), new MyTableRender());

就好

JTabel 获取表格中选中的数据, 那么有可以考虑使用下面两种方法来实现

方法一:ListSelectionListener 来获取用户在表格里选中的数据是最方便和最优的

因为: 支持单选, 也支持多行, 支持键盘上下移动进行选择

方法二: MouseListener 当鼠标点击某行数据后,输出该数据 ,可以实现

不推荐使用MouseListener来获取表格选中数据:

1 不够灵敏, 偶尔会失效, 比如刚打开窗口后 ,有时候迅速点击table MouseListener 就可能不会有反应

2  用户选中多行, 比如拖动或者键盘上下移动进行选择时,那么在MouseListener里获取多行比较麻烦不仅仅需要实现鼠标点击 ,还得需要实现拖动鼠标,释放鼠标 等多个方法,如果完善一点还需要实现键盘事件的方法

参考代码如下

import javaawt;

import javaawtevent;

import javaxswing;

import javaxswingevent;

public class TableDemo extends JFrame {

String[] names = { "姓名", "等级" };

String[][] data = { { "张三", "A" }, { "李四", "B" }, { "王五", "C" } };

public TableDemo() {

JTable table = new JTable(data, names);

JScrollPane jsp = new JScrollPane(table);

add(jsp);

setSize(300, 200);

setLocationRelativeTo(null);

setDefaultCloseOperation(EXIT_ON_CLOSE);

// 推荐

tablegetSelectionModel()addListSelectionListener(new ListSelectionListener() {

@Override

public void valueChanged(ListSelectionEvent e) {

if (!egetValueIsAdjusting()) {

//支持拖动多选

int[] rows = tablegetSelectedRows();

// int[] cols = tablegetSelectedColumns();//选中的列

for (int i : rows) {

Systemoutprintln("#方法一:\t" + tablegetValueAt(i, 0) + "\t" + tablegetValueAt(i, 1));

}

//支持单选

// int row=tablegetSelectedRow();//选中行

// //int col=tablegetSelectedColumn();//选中列

// Systemoutprintln("方法一:"+tablegetValueAt(row, 0)+"\t"+tablegetValueAt(row, 1));

}

}

});

tableaddMouseListener(new MouseAdapter() {

@Override

public void mouseClicked(MouseEvent e) {

//单选

int row = tablerowAtPoint(egetPoint());// 选中行

// int col =tablecolumnAtPoint(egetPoint());//选中列

Systemoutprintln("方法二:\t" + tablegetValueAt(row, 0) + "\t" + tablegetValueAt(row, 1));

}

});

}

public static void main(String[] args) {

EventQueueinvokeLater(new Runnable() {

public void run() {

new TableDemo()setVisible(true);

}

});

}

}

以上就是关于java怎么把jtable中的值全部取出全部的内容,包括:java怎么把jtable中的值全部取出、java 如何获取jtabel中被选中行的值、java 获取table 的内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10066060.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存