Resizing elementów jLayeredPane

0

Witam,
przeszukałem już spory kawał internetu w poszukiwaniu odpowiedzi na mój problem, jednak wszystko to spełzło na niczym. Sytuacja wygląda następująco: projektuję interfejs przy pomocy Swinga i kreatora NetBeansa ("wyklikując" go). Kłopot pojawia się w momencie, kiedy na nowo utworzoną jLayeredPane (standardowe właściwości plus resizing w obu osiach) dodaję następny element - jTabbedPane. Zależy mi na tym, żeby podczas zmieniania rozmiaru głównego okna swój rozmiar zmieniała również TabbedPane, tymczasem jedynym który dostosowuje się jest samo LayeredPane (tylko to podlega resizingowi - jego zawartość już nie).
W jaki sposób sobie z tym poradzić?

0

Prawdopodobnie przyczyną jest to, że JLayeredPane ustawia celowo typ LayoutManagera na null w swoim konstruktorze. Możesz to sobie zmienić jak sądzę. W Javadoc jest też wyraźnie napisane:
"Note: that these layers are simply a logical construct and LayoutManagers will affect all child components of this container without regard for layer settings."

0

Niestety, wygląda na to że JLayeredPane 'na sztywno' narzuca swoim komponentom właściwości, jeśli chodzi o to, czego potrzebuję. Jednak dzięki za podpowiedź, jeszcze w tym pogrzebię.
Pozdrawiam

0

Możesz to zmienić. Czasem wystarczy wywołać odpowiednie metody na już skonstruowanym JLayerPane, a jeżeli nie, to możesz zrobić klasę, która będzie od niej dziedziczyć. Im nowsza wersja Javy, tym łatwiej jest zmienić właściwości takich obiektów.

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