繁体   English   中英

插入后刷新JTable

[英]Refresh JTable after insert

实际上,管理足球运动员和俱乐部的应用程序编程只是一小部分而已,在尝试了很多创意之后,我找不到任何解决方案。

简单:我有一个JTable ,我想在完成任何任务(插入,更新或删除)之后刷新它。

那是代码

    //for fill the JTable
    // class controllApp

        class controllApp(){

        public DefaultTableModel getCleubData() {
                Vector<Vector<String>> data = new Vector<Vector<String>>();
                Vector<String> colum = new Vector<String>();
                colum.add("id_c");
                colum.add("coach");
                colum.add("nom_cleub");
                colum.add("DATE_CREATION");
                colum.add("COULEUR_MAILLOT");
                colum.add("COUNTRY");

                String query = "select id_c,coach,nom_cleub,date_creation,couleur_maillot,country from CLEUB ORDER BY ID_C";

                try {
                    Connection conn = ReportDriver.connectDB(DB_CONNECTION, DB_USER,
                            DB_PASSWORD);
                    stmt = conn.createStatement();
                    ResultSet rs = stmt.executeQuery(query);
                    while (rs.next()) {

                        Vector<String> vstring = new Vector<String>();

                        vstring.add(rs.getString("id_c"));
                        vstring.add(rs.getString("coach"));
                        vstring.add(rs.getString("nom_cleub"));
                        java.sql.Date date = rs.getDate("date_creation");
                        java.text.DateFormat df = java.text.DateFormat.getDateInstance();
                        vstring.add(df.format(date));
                        vstring.add(rs.getString("couleur_maillot"));
                        vstring.add(rs.getString("country"));
                        vstring.add("\n\n\n\n\n\n\n");

                        data.add(vstring);
                    }
                } catch (SQLException e) {
                    e.printStackTrace();
                } finally {
                    if (stmt != null) {
                        try {
                            stmt.close();
                        } catch (SQLException ex) {

                        }
                    }
                }
                DefaultTableModel d = new DefaultTableModel(data, colum);
                return d;
            }

        }




        //fill frame in other class (frame classe)
        // class frame() to call controllAPP.getJoueurdata()    



        class frame(){

        private static JTable table1;
        AbstractTableModel model;
                model = new controllApp().getJoueurData();
                table1 = new JTable(model);
                JScrollPane scrollPane = new JScrollPane(table1);
                scrollPane.setBounds(6, 29, 807, 297);
                panel.add(scrollPane);
    }

解决方案是获取Jtable的模型,然后向其添加Vector数据,然后必须将模型设置为现有的JTable。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM