首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

编辑JTable后获取所选行和列

是指在Java Swing中,当用户对JTable进行编辑操作后,获取用户所选中的行和列的信息。

在JTable中,可以通过以下步骤来获取所选行和列:

  1. 获取JTable的选中行:使用JTable的getSelectedRow()方法可以获取用户所选中的行的索引。如果用户没有选中任何行,则该方法返回-1。
  2. 获取JTable的选中列:使用JTable的getSelectedColumn()方法可以获取用户所选中的列的索引。如果用户没有选中任何列,则该方法返回-1。
  3. 获取JTable的选中单元格的值:使用JTable的getValueAt(int row, int column)方法可以获取用户所选中单元格的值。其中,row为所选中行的索引,column为所选中列的索引。

以下是一个示例代码,演示如何获取JTable的选中行和列:

代码语言:txt
复制
import javax.swing.*;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;

public class JTableSelectionExample {
    public static void main(String[] args) {
        JFrame frame = new JFrame("JTable Selection Example");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // 创建一个二维数组作为JTable的数据模型
        Object[][] data = {
                {"John", "Doe", 30},
                {"Jane", "Smith", 25},
                {"Bob", "Johnson", 35}
        };

        // 创建一个字符串数组作为JTable的列名
        String[] columnNames = {"First Name", "Last Name", "Age"};

        // 创建JTable并设置数据模型和列名
        JTable table = new JTable(data, columnNames);

        // 添加选择监听器,用于监听用户的选择操作
        table.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
            @Override
            public void valueChanged(ListSelectionEvent e) {
                // 获取选中行的索引
                int selectedRow = table.getSelectedRow();
                // 获取选中列的索引
                int selectedColumn = table.getSelectedColumn();

                // 获取选中单元格的值
                Object selectedValue = table.getValueAt(selectedRow, selectedColumn);

                System.out.println("Selected Row: " + selectedRow);
                System.out.println("Selected Column: " + selectedColumn);
                System.out.println("Selected Value: " + selectedValue);
            }
        });

        // 将JTable添加到一个滚动面板中,并将滚动面板添加到窗口中
        JScrollPane scrollPane = new JScrollPane(table);
        frame.add(scrollPane);

        frame.pack();
        frame.setVisible(true);
    }
}

在上述示例中,当用户选择JTable中的某一行或某一列时,会触发选择监听器中的valueChanged()方法。在该方法中,我们可以通过table.getSelectedRow()和table.getSelectedColumn()方法获取用户所选中的行和列的索引,并通过table.getValueAt()方法获取选中单元格的值。最后,我们将这些信息打印到控制台上。

这是一个简单的示例,你可以根据实际需求进行相应的处理和扩展。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券