用NetBeans制作表格并实现增删改功能

    首先要制作如下一个运行界面:

用NetBeans制作表格并实现增删改功能_第1张图片

      第一步:在组件面板的Swing控件栏中的“表”拖入工作台中,调整大小。选中表格,在右边属性栏的model选项进行编辑(点击后面的三个点按钮),在“表模型定制器”下可修改表的行数、列数、标题、属性等,上图界面即把行数改为0,列数改为4,标题分别改为姓名、性别、年龄、身份证号。第二步:根据需求继续从Swing控件栏中拖入“标签”和“文本字段”。文本字段是用来输入和显示表格中内容的,标签是用来标记文本字段输入和显示内容的属性的。为了后面编程代码的条理和可读性,可以修改文本字段的变量名称。步骤为:鼠标选中一个文本字段->点击右键->更改变量名称。我在做时就把变量名称分别改为了:jText_Name、jText_Sex、jText_Age、jText_IdCard。标签的内容选中标签->点击右键->编辑文本既可以编辑。第三步:从Swing控件栏中拖入按钮,编辑文本更改文本内容。通过这三步界面就差不多做完了。

      界面做完了,下面就是编程部分:

       1、双击添加按钮,进行添加功能编码。

         //构造默认的 DefaultTableModel,它是一个零列零行的表。
        DefaultTableModel dtm=(DefaultTableModel)jTable1.getModel();
        //构造一个空向量V_Add
        Vector V_Add=new Vector();
        //获取文本字段中的内容。
        V_Add.add(jText_Name.getText());
        V_Add.add(jText_Sex.getText());
        V_Add.add(jText_Age.getText());
        V_Add.add(jText_IdCard.getText());
        //添加完信息后表格自动添加一行。
        dtm.addRow(V_Add);
        //添加完后文本字段中内容清空
        jText_Name.setText(null);
        jText_Sex.setText(null);
        jText_Age.setText(null);
        jText_IdCard.setText(null);                           

       2、添加完信息之后点击表格中信息,所点击的哪一行还需要在文本字段中显示出来才能进行修改,所以在进行编辑修改代码之前还要增加鼠标点击选中这个功能:首先选中表格->点击鼠标右键->事件->Mouse->MouseClicked即可对鼠标点击功能进行编写代码。

         //鼠标点击选中表格中一行信息可像是在文本字段中。
        DefaultTableModel dtm=(DefaultTableModel)jTable1.getModel();
        //定义变量row为鼠标点击的行数。
        int row=jTable1.getSelectedRow();
        //函数getValueAt返回要查询的行和列处单元格的属性值
        jText_Name.setText(dtm.getValueAt(row, 0).toString());
        jText_Sex.setText(dtm.getValueAt(row, 1).toString());
        jText_Age.setText(dtm.getValueAt(row, 2).toString());
        jText_IdCard.setText(dtm.getValueAt(row, 3).toString());

      3、双击修改按钮,对修改功能进行编码:

      //找到鼠标选中的表格中的行和列,显示在文本中,进行修改,最后清空文本字段中信息。
       DefaultTableModel dtm=(DefaultTableModel)jTable1.getModel();
       int row=jTable1.getSelectedRow();
       dtm.setValueAt(jText_Name.getText(), row, 0);
       dtm.setValueAt(jText_Sex.getText(), row, 1);
       dtm.setValueAt(jText_Age.getText(), row, 2);
       dtm.setValueAt(jText_IdCard.getText(), row, 3);
       jText_Name.setText(null);
       jText_Sex.setText(null);
       jText_Age.setText(null);
       jText_IdCard.setText(null);

      4、双击删除按钮,对删除功能惊醒编码:

      //将鼠标选中的列和行变为空。

      DefaultTableModel dtm=(DefaultTableModel)jTable1.getModel();
       int row=jTable1.getSelectedRow();
       dtm.removeRow(row);
       jText_Name.setText(null);
       jText_Sex.setText(null);
       jText_Age.setText(null);
       jText_IdCard.setText(null);




你可能感兴趣的:(Java)