konto usunięte

Temat: JTabbedPane Jak usunąć panel bez przeindeksowania...

Podczas dodawania kolejnych zakładek do JTabbedPane dodają się z określonym indexem, czasami potrzebuję usunąć jakąś z nich jeśli usunę ze środka to wszystkie zakładki po tej usuwanej zostaną prze indeksowane, niestety często w projekcie mam odwołania do zakładek po indeksie. Więc po usunięcie zakładki ze środka dużo mi bruździ :|
Jest niby metoda setVisible ale nie wiem czemu dostaję nulla
getZakladki().getTabComponentAt(3).setVisible(false);

W jaki sposób mógłbym ją ukryć albo usunąć bez prze indeksowania kolejnych.

A może jakiś inny pomysł na rozwiązanie tego problemu ?

Myślałem o jakiejś hashMapie z indeksami tabów i za każdym razem odwoływać się po nazwie zakładki, ale nie wiem czy to dobry pomysł.
Zacheusz Siedlecki

Zacheusz Siedlecki Senior Java
Architect, Working
Manager

Temat: JTabbedPane Jak usunąć panel bez przeindeksowania...

Możesz wskaźniki do wszystkich "zakładek" przechowywać na przykład w tablicy/wektorze niezależnej od tego co jest w JTabbedPane.
Grzegorz Jaros

Grzegorz Jaros Team Lead/Project
Lead Motorola

Temat: JTabbedPane Jak usunąć panel bez przeindeksowania...

Zawsze możesz samemu wyszukać indeks potrzebnej zakładki bazująca na jej nazwie:


public int getIndex(JTabbedPane tab, String title) {
for (int i = 0; i < tab.getComponentCount(); i++) {
if (tab.getTitleAt(i).equals(title)) {
return i;
}
}
return -1;
}
Grzegorz Jaros edytował(a) ten post dnia 13.10.08 o godzinie 13:27
Wojciech P.

Wojciech P. Blogger, programista
Python i Java

Temat: JTabbedPane Jak usunąć panel bez przeindeksowania...

Mapa wydaje się ciekawym pomysłem. Skoro i tak dostajesz się do zakładek via metoda getZakladki() to może całość opakować w jakiś obiekt, który będzie trzymał referencje do zakładek i miał metody showTab(String), hideTab(String), getTab(String), etc, etc
Zacheusz Siedlecki

Zacheusz Siedlecki Senior Java
Architect, Working
Manager

Temat: JTabbedPane Jak usunąć panel bez przeindeksowania...

Najwygodniejsza mapa, mniej wygodna, ale fajne wyszukiwanie po nazwie a najszybsza tablica.



Wyślij zaproszenie do