zerowanie tablicy

0

Witam, mam mały problem, w poniższym kodzie mam błąd ale nie wiem gdzie. Chodzi o to że program po kliknieciu buttona POKAZ pokazuje mi liste wnioskow które zczytuje z bazy danych, jednak gdy kliknę po raz kolejny w POKAZ to lista sie dubluje i tak można wiele razy. Próbowałem poniższym kodem czyścić całą tabele ale nie działa. W załączniku mam to pokazane co się dzieje, Proszę o pomoc

DefaultTableModel model = (DefaultTableModel) tabelaWnioskow.getModel();
        System.out.println(model.getRowCount());
             if (model.getRowCount() != 0)
             {
                int liczbaWierszy = model.getRowCount();
                for(int i = 0; i <= liczbaWierszy; i++)
                {
                 model.removeRow(i);
                    System.out.println(i);
                }
0
DefaultTableModel model = (DefaultTableModel) table.getModel();
model.setRowCount(0);
0

To co wyżej, ew. spróbuj tak.

Zamiast:

for(int i = 0; i <= liczbaWierszy; i++)

Napisz:

for(int i = liczbaWierszy - 1; i >= 0; i--)
0

niestety nadal wyrzuca mi błąd: java.lang.ArrayIndexOutOfBoundsException: 3 >= 1

moj caly kod tego:

DefaultTableModel model = (DefaultTableModel) tabelaWnioskow.getModel();
//     model.setRowCount(0);
        System.out.println(model.getRowCount());
             if (model.getRowCount() != 0)
             {
                int liczbaWierszy = model.getRowCount() - 1;
                for(int i = liczbaWierszy; i >= 0; i--)
                {
                    System.out.println(i);
                 model.removeRow(i);
                    System.out.println(i);
                }

             }
       
        try{
             
        queryString ="select Imie, Nazwisko, id_wysylajacego, przeczytane, tresc, data_od, data_do, ilosc_dni"
                + " from Osoby as o join Wiadomosc as w"
                + " on o.ID = w.id_wysylajacego";
        ResultSet rs = db.statement.executeQuery(queryString); 
            while(rs.next())
            {     imie = (String) rs.getObject("Imie");
                  nazwisko = (String) rs.getObject("Nazwisko");
                   if ((imie + " " + nazwisko).equals(imieNazwisko))              
                    
                        { 
                           model.addRow(new Object[]{null,null,null,null});
                           tabelaWnioskow.getModel().setValueAt(rs.getDate("data_od"), wiersz, kolumna);
                           tabelaWnioskow.getModel().setValueAt(rs.getDate("data_do"), wiersz, kolumna+1);
                           tabelaWnioskow.getModel().setValueAt(rs.getInt("ilosc_dni"), wiersz, kolumna+2);
                           tabelaWnioskow.getModel().setValueAt(rs.getString("tresc"), wiersz, kolumna+3);
                           wiersz++;
                        }

            }
         } catch (Exception e)
                    {
                        e.printStackTrace();
                    }
0
model.setRowCount(0);

A masz w swoim przykładzie zakomentowane to to. Nie zeruje Ci to tej tabeli?

0

wlasnie to tez nie zeruje tej tabeli

1 użytkowników online, w tym zalogowanych: 0, gości: 1