java swing Jtable的增删改查的图形化显示

对于在Swing中的JTable表格进行增删改查的操作,下面是一些基本步骤和考虑因素:

  1. 创建JTable:首先,你需要创建一个JTable,并添加到JScrollPane组件中。

    String[] columnNames = {"列1", "列2", "列3"};
    Object[][] data = {
        {"数据1", "数据2", "数据3"},
        {"数据4", "数据5", "数据6"},
        //...
    };
    JTable table = new JTable(data, columnNames);
    JScrollPane scrollPane = new JScrollPane(table);
    
  2. 添加数据:通常,我们会使用DefaultTableModel来管理表格数据,这样可以方便我们添加或删除行。

    DefaultTableModel model = (DefaultTableModel) table.getModel();
    model.addRow(new Object[]{"数据7", "数据8", "数据9"});
    
  3. 修改数据:你可以通过表格的setValueAt()方法来修改某个单元格的值。

    table.setValueAt("新数据", rowIndex, columnIndex);
    
  4. 删除数据:同样,如果我们使用DefaultTableModel,删除数据也很方便。

    model.removeRow(rowIndex);
    
  5. 查询数据:你可以使用getValueAt()方法来获取某个单元格的值。

    Object value = table.getValueAt(rowIndex, columnIndex);
    

以上只是JTable的基本操作,实际使用中你可能需要考虑更多的情况,例如如何响应用户的交互,如何处理数据的变化等等。

注意:以上代码片段中的rowIndexcolumnIndex都是从0开始计数的。
下面是一个完整的Swing应用示例,该示例创建了一个表格并添加了增删改查的功能:

import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class TableExample {
    public static void main(String[] args) {
        // 创建表格模型
        DefaultTableModel model = new DefaultTableModel(new Object[][]{}, new Object[]{"列1", "列2", "列3"});
        JTable table = new JTable(model);

        // 添加一些初始数据
        model.addRow(new Object[]{"数据1", "数据2", "数据3"});
        model.addRow(new Object[]{"数据4", "数据5", "数据6"});

        // 创建操作按钮
        JButton addButton = new JButton("添加数据");
        JButton deleteButton = new JButton("删除数据");
        JButton updateButton = new JButton("修改数据");

        // 添加数据按钮的监听器
        addButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                model.addRow(new Object[]{"新数据1", "新数据2", "新数据3"});
            }
        });

        // 删除数据按钮的监听器
        deleteButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                int selectedRow = table.getSelectedRow();
                if (selectedRow != -1) {
                    model.removeRow(selectedRow);
                }
            }
        });

        // 修改数据按钮的监听器
        updateButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                int selectedRow = table.getSelectedRow();
                if (selectedRow != -1) {
                    model.setValueAt("已修改的数据", selectedRow, 1);
                }
            }
        });

        // 创建窗口和布局
        JFrame frame = new JFrame();
        frame.setLayout(new BorderLayout());
        frame.setSize(800, 600);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // 添加组件到窗口
        frame.add(new JScrollPane(table), BorderLayout.CENTER);

        JPanel buttonPanel = new JPanel();
        buttonPanel.add(addButton);
        buttonPanel.add(deleteButton);
        buttonPanel.add(updateButton);
        frame.add(buttonPanel, BorderLayout.SOUTH);

        // 显示窗口
        frame.setVisible(true);
    }
}

这个示例程序创建了一个JTable,并且添加了三个按钮用于添加、删除和修改数据。点击"添加数据"按钮会在表格的末尾添加一行数据,点击"删除数据"按钮会删除当前选中的行,点击"修改数据"按钮会将当前选中行的第二列数据修改为"已修改的数据"。

这只是一个基本示例,实际使用中你可能需要根据你的具体需求进行更多的定制和优化。
java swing Jtable的增删改查的图形化显示_第1张图片

你可能感兴趣的:(java,程序人生,开发语言,后端)