}捕获(例外e){ //TODO自动生成的捕捉块 e、 printStackTrace(); } } }); } //变量声明-不修改 私有javax.swing.JLabel jLabel1; 私有javax.swing.JScrollPane-jScrollPane1; 私有javax.swing.JTable jTable1; 私有javax.swing.JButton back; //变量结束声明 }

}捕获(例外e){ //TODO自动生成的捕捉块 e、 printStackTrace(); } } }); } //变量声明-不修改 私有javax.swing.JLabel jLabel1; 私有javax.swing.JScrollPane-jScrollPane1; 私有javax.swing.JTable jTable1; 私有javax.swing.JButton back; //变量结束声明 },java,swing,jtable,Java,Swing,Jtable,当我单击一个单元格时,它会显示所有的行值,但它只显示单元格值 一个选项是打印所选行的数据向量: DefaultTableModel model = (DefaultTableModel)jTable1.getModel(); System.out.println(model.getDataVector().get(selectedRowIndex)); 也可以逐个打印行的单元格值: TableModel model = jTable1.getModel(); for(int i = 0; i

当我单击一个单元格时,它会显示所有的行值,但它只显示单元格值

一个选项是打印所选行的数据向量:

DefaultTableModel model = (DefaultTableModel)jTable1.getModel();
System.out.println(model.getDataVector().get(selectedRowIndex));
也可以逐个打印行的单元格值:

TableModel model = jTable1.getModel();
for(int i = 0; i < model.getColumnCount(); i++){
    if(i > 0){
        System.out.println(", ");
    }
    System.out.println(model.getValueAt(selectedRowIndex, selectedColumnIndex));
}
System.out.println();
TableModel=jTable1.getModel();
对于(int i=0;i0){
System.out.println(“,”);
}
System.out.println(model.getValueAt(selectedRowIndex,selectedColumnIndex));
}
System.out.println();

一个选项是打印所选行的数据向量:

DefaultTableModel model = (DefaultTableModel)jTable1.getModel();
System.out.println(model.getDataVector().get(selectedRowIndex));
也可以逐个打印行的单元格值:

TableModel model = jTable1.getModel();
for(int i = 0; i < model.getColumnCount(); i++){
    if(i > 0){
        System.out.println(", ");
    }
    System.out.println(model.getValueAt(selectedRowIndex, selectedColumnIndex));
}
System.out.println();
TableModel=jTable1.getModel();
对于(int i=0;i0){
System.out.println(“,”);
}
System.out.println(model.getValueAt(selectedRowIndex,selectedColumnIndex));
}
System.out.println();
不是答案(JHead给了您示例代码),只是一条很长的注释

单击行时

无论用户使用鼠标还是键盘选择行,都应该设计一个合适的GUI

因此,您应该使用
ListSelectionListener
。有关更多信息和示例,请阅读上Swing教程的部分。本教程使用JList,但JTable的概念也是一样的

此外,如果选择了多个行,该怎么办

我希望它显示所有选定的行值

这有什么意义?所有数据都已显示在表中。

没有答案(jhed给出了示例代码),只需长注释即可

单击行时

无论用户使用鼠标还是键盘选择行,都应该设计一个合适的GUI

因此,您应该使用
ListSelectionListener
。有关更多信息和示例,请阅读上Swing教程的部分。本教程使用JList,但JTable的概念也是一样的

此外,如果选择了多个行,该怎么办

我希望它显示所有选定的行值


这有什么意义?所有数据都已显示在表中。

对象selectedObject=(对象)jTable1.getModel().getValueAt(selectedRowIndex,selectedColumnIndex);System.out.println(selectedObject)向我建议您不是在打印行all@BoDidely正确的方法是什么?您正在选择一个对象并打印它。您需要为行中的每个对象执行该操作
object selectedObject=(object)jTable1.getModel().getValueAt(selectedRowIndex,selectedColumnIndex);System.out.println(selectedObject)向我建议您不是在打印行all@BoDidely正确的方法是什么?您正在选择一个对象并打印它。您需要对行中的每个对象执行此操作当行检测双击时,我希望它显示另一帧并将所有行值传递给frame@JohnJoe那么你应该在你的问题中说明这一点。无论如何,你已经从JHead那里得到了答案。该示例演示了如何使用DefaultTableModel的get getDataVector()方法获取行向量。我使用JHead代码,但get
模型不能转换为javax.swing.table.DefaultTableModel
@JohnJoe,我们不知道“TheModel”是什么。看起来您正在使用自定义的TableModel。我看没有理由这样做。因此,您可以添加自己的方法来返回整行数据,也可以使用DefaultTableModelframe@JohnJoe那么你应该在你的问题中说明这一点。无论如何,你已经从JHead那里得到了答案。该示例演示了如何使用DefaultTableModel的get getDataVector()方法获取行向量。我使用JHead代码,但get
模型不能转换为javax.swing.table.DefaultTableModel
@JohnJoe,我们不知道“TheModel”是什么。看起来您正在使用自定义的TableModel。我看没有理由这样做。因此,您可以添加自己的方法来返回整行数据,也可以使用DefaultTableModel。对于第一个方法,我得到错误
模型不能转换为javax.swing.table.DefaultTableModel
对于第一个方法,我得到错误
模型不能转换为javax.swing.table.DefaultTableModel