Problem z tworzeniem TabbedPane

Odpowiedz Nowy wątek
2011-08-01 11:12
0

A więc mam stworzony Panel i chcę dodać na niego JTabbedPane, próbuję tak:

JTabbedPane przesiadki = new JTabbedPane();
JPanel panel1 = new JPanel();
przesiadki.addTab("Tytuł", panel1);
jSzczegolyPrzesiadek.add(przesiadki); //jSzczegolyPrzesiadek to mój Panel 

Kod ten wykonywany jest dopiero po nacisnieciu Buttona, ale nic się nie dzieje

edytowany 1x, ostatnio: gawkes11, 2011-08-01 11:13

Pozostało 580 znaków

2011-08-01 12:46
bo
0

Ja bym dodał

panel.validate();
panel.repaint();
Niestety dalej nic :/ - gawkes11 2011-08-01 16:37
Odpowiadanie komentarzem na anonimowe posty jest raczej mało rozsądne. Skąd mam wiedzieć, że odpowiedziałeś? - bogdans 2011-08-02 15:54

Pozostało 580 znaków

2011-08-02 15:51
bo
0

Ty panel1 też tworzysz i dodajesz po kliknięciu. Zatem validate() i repaint() musisz wykonać na rzecz kontenera, który zawiera panel1.

Pozostało 580 znaków

2011-08-02 16:31
0

Spróbowałem i tak ale dalej żadnego efektu, chociaż robię to identycznie jak w tutorialu oficjalnym

Pozostało 580 znaków

2011-08-02 16:58
bo
0

A ten kod się wykonuje? Dodaje do kodu

System.out.println("doopa");

Pozostało 580 znaków

2011-08-02 17:23
0

Taaa też próbowałem, spróbuję przedebugować chociaż za wiele po tym nie oczekuje ;)

Pozostało 580 znaków

2011-08-03 12:35
0

Niestety jedyny sposób póki co w jaki udało mi się mniej więcej rozwiązać problem to taki, że dodaję od razu TabbedPane na Panel i dopiero potem w kodzie karty do TabbedPane, nie do końca mi się to podoba bo TabbedPane jak jest puste ma biały kolor i się źle komponuje ;)

Pozostało 580 znaków

2011-08-03 12:49
bo
0

Jak możesz dodać od razu skoro panel1 tworzysz dopiero po kliknięciu?
Może Ty masz pole w klasie panel1 i zmienną lokalną panel1i dodajesz przesiadki do zmiennej lokalnej? Zamień

JPanel panel1=new JPanel();
//na
panel1 =new JPanel();

Pozostało 580 znaków

2011-08-03 15:44
0

Ten panel, na który dodaję TabbedPane mam tworzony przy initComponents();

Pozostało 580 znaków

2011-08-03 18:06
bo
0

Ale w tym kodzie

JTabbedPane przesiadki = new JTabbedPane();
JPanel panel1 = new JPanel();
przesiadki.addTab("Tytuł", panel1);
jSzczegolyPrzesiadek.add(przesiadki); 

dodawałeś JTabbedPane na inny (nie wyświetlany!) panel. Nie na ten tworzony w initComponents().

Pozostało 580 znaków

2011-08-05 10:24
0

Inaczej, na JTabbedPane dodaje panel (który jeszcze nie jest wyswietlany), a następnie JTabbedPane dodaje na Panel jSzczegolyPrzesiadek, który jest tworzony w initComponents i jest wyswietlany

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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