sposób na ukrycie jTable

0

Hej,
Próbuję napisać w konstruktorze klasy kod, który sprawi, że jTable stanie się niewidoczna, następnie w trakcie działania aplikacji na skutek konkretnych działań użytkownika tabela ta ma się pojawić. Nie udało mi się znaleźć w sieci odpowiedniego rozwiązania. Probowałem :

jTableEdycja.getColumnModel().getColumn(0).setMinWidth(0);
jTableEdycja.getColumnModel().getColumn(0).setMaxWidth(0);

dla każdej kolumny po kolei, ale efekt tego był taki, ze w miejscu tabeli zostało obramowanie tejże (w załączniku)

oraz jTable.setVisible(false), tutaj z kolei zostało obramowanie tabeli oraz nazwy kolumn (w załączniku)

Czy jest jakis sposób na chwilowe ukrycie tabeli tak, aby nie pozostał po niej ślad?

0

Może spróbuj usunąć tą tabele z contentPanelu, a potem go przerysować, i w drugą stronę dodać a potem przerysować... :)

remove(jTable);
repaint();

add(jTable);
repaint();

Tak na szybko z głowy.

0

Niestety to nie działa

0

Brakuje validate.

remove(jTable);
validate();
repaint();
 
add(jTable);
validate();
repaint();
0

możliwe, że to wynik mojego niedouczenia, ale próbowałem użyć podany sposób na kilka sposobów i remove(jTable) nie wywołuje w moim programie żadnej reakcji...

0

Przed sekundą udało mi się znaleźć inny sposób na obejście tego problemu na pewnym polskim forum- należy umieścić tabelę, którą chcemy ukryć w jakimś innym komponencie np jPanel i na nim wykonać jPanel.setVisible(false) + repaint();. U mnie działa. Dziękuję wszystkim za odpowiedzi, postaram się jeszcze powalczyć z zaproponowanym wcześniej sposobem, żeby zrozumieć, co było nie tak ;)

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