Problem z tabelami

0

Mozliwe, ze problem jest latwy do rozwiazania niestety nie wiem jak go rozwiazac i bylbym wdzieczny za pomoc. Wczytuje z pliku txt dane, a nastepnie tworze tabele, w ktorej wartosciami sa informacje odczytane z pliku. Cala tabela jest ladnie tworzona razem ze scrollami i normalnie moge na niej operowac bez zadnych problemow. Problem pojawia sie podczas ponownego wczytania jakiegos 2 pliku(pliku z innymi danymi). Nowa tabela jest tworzona pojawia sie na ekranie, problem w tym ze jak klikne na kolumne czy na wiersz to "naklada" mi sie stara tabela na nowa, wartosci sie zmieniaja pojawiaja sie te ze starej tabeli i juz nie dzialaja scrolle. Gdzie moze tkwic problem, moze nalezy jakos usunac stara tabele przed otworzeniem nowej ??

0

Tabela jest robiona w swingu. Moze powiem jak mam to zrobione. Otwieram plik i pytam po jego otwarciu uzytkownika czy mam zastosowac domyslne nazwy kolumn, czy nazwami ma byc 1 linia pliku. W zaleznosci co uzytkownik wybierze jest wywolywana jedna z 2 metod sluchacza. Po czym wywolywana jest prywatna metoda ktora tworzy tabele na podstawie danych.

TableModel tab=new AbstractTableModel()
{
public int getColumnCount() //zwraca liczbe kolumn
{
return liczbak+1;
}
public int getRowCount()
{
return liczbaw; //zwraca liczbe wierszy
}
public String getColumnName(int col) //zwraca nazwe kolumny
{
return head[col];
}
public Object getValueAt(int row,int col)
{
if(col==0)
return wiersze[row];

                return dane.get((row+1)*liczbak -(liczbak-col+1));
            }
        };

dalej jeszcze tworze 2 tablecolumnModel
a potem na podstawie ich JTable

Cos moze nie tak z modelem danych.
W jaki sposob mozna usunac stara tabele??

0

Moze jeszcze dodam ze tworzenie tabeli mam w classie ktora dziedziczy po JDialog.
class B extends JDialog

w glownej classie mam pole
public B okno

czyli jak otwieram plik za kazdym razem to napierw robie
okno=new B(this.JFrame,BufferedReader we);
okno.setVisible(true);

metody class B odpowiadaja za odczyt danych z pliku i stworzenie tabeli

Ale jako za kazdym razem robie okno=new B(...);
to stary obiekt wraz z tabela powinnien byc usuwany automatycznie

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