Java JTable getting the data of the selected row

前端 未结 4 1976
爱一瞬间的悲伤
爱一瞬间的悲伤 2021-01-01 18:43

Are there any methods that are used to get the data of the selected row? I just want to simply click a specific row with data on it and cli

相关标签:
4条回答
  • 2021-01-01 19:41

    if you want to get the data in the entire row, you can use this combination below

    tableModel.getDataVector().elementAt(jTable.getSelectedRow());
    

    Where "tableModel" is the model for the table that can be accessed like so

    (DefaultTableModel) jTable.getModel();
    

    this will return the entire row data.

    I hope this helps somebody

    0 讨论(0)
  • 2021-01-01 19:45

    http://docs.oracle.com/javase/7/docs/api/javax/swing/JTable.html

    You will find these methods in it:

    getValueAt(int row, int column)
    getSelectedRow()
    getSelectedColumn()
    

    Use a mix of these to achieve your result.

    0 讨论(0)
  • 2021-01-01 19:47

    using from ListSelectionModel:

    ListSelectionModel cellSelectionModel = table.getSelectionModel();
    cellSelectionModel.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    
    cellSelectionModel.addListSelectionListener(new ListSelectionListener() {
      public void valueChanged(ListSelectionEvent e) {
        String selectedData = null;
    
        int[] selectedRow = table.getSelectedRows();
        int[] selectedColumns = table.getSelectedColumns();
    
        for (int i = 0; i < selectedRow.length; i++) {
          for (int j = 0; j < selectedColumns.length; j++) {
            selectedData = (String) table.getValueAt(selectedRow[i], selectedColumns[j]);
          }
        }
        System.out.println("Selected: " + selectedData);
      }
    
    });
    

    see here.

    0 讨论(0)
  • 2021-01-01 19:48

    You can use the following code to get the value of the first column of the selected row of your table.

    int column = 0;
    int row = table.getSelectedRow();
    String value = table.getModel().getValueAt(row, column).toString();
    
    0 讨论(0)
提交回复
热议问题