Niepoprawne nakładanie na siebie paneli

Odpowiedz Nowy wątek
2014-12-17 16:55
0

Okej, jak robiłem jakieś GUI w IDE od Borland (Delphi / c++ builder) to mogłem na siebie nakładać panele z różnymi kontrolkami i przyciągać je do przodu (bring to front) tak że mogłem łatwo sterować tym co jest w okienku.

Nie wiem jak uzyskać podobny efekt w edytorze netbeansa. W Free Design nie da się wgl ustawić żadnych kontrolek pod/nad sobą. W Aboslute Layout jestem w stanie je ułożyć pod sobą ale

  • Wiem jak przesuwać kontrolki nad/pod siebie w edytorze, ale nie mogłem znaleźć żadnej metody żeby zrobić to w runtime.
  • Jeżeli ustawiam Windows Look And Feel to po najechaniu na jakąś kontrolkę ona się "odmaluje" nawet jeżeli jest w panelu który jest pod spodem i nie powinno go być widzieć.

Jest też komponent Layered Pane i wiem że w nim da się sterować depth w jakiś sposób i czytałem o tym tu http://docs.oracle.com/javase[...]g/components/layeredpane.html
I przepisałem ten kod ii działało jak oczekiwałem, ale jak spróbowałem przerobić go na panele too nie było żadnego efektu. Nie przeskakiwały.

Ogólnie efekt który chciałbym uzyskać to to że mam kilka kontrolek które potem chciałbym zniknąć je i pojawić inne :> Np te które są na innym panelu.

Nie wiem jak to zrobić. Przy użyciu layered pane czy raczej je jakoś poustawiać w aboslute layout ?


char mander; bool basaur;
edytowany 1x, ostatnio: TomRiddle, 2014-12-17 21:51

Pozostało 580 znaków

2014-12-17 20:39
1

To czego szukasz to CardLayout
CardLayout
http://stackoverflow.com/ques[...]-panels-using-the-card-layout
http://docs.oracle.com/javase/tutorial/uiswing/layout/card.html

działa bardzo fajnie i łatwo sterować.

Ewentualnie możesz użycz Glass Pane ale to już nie takie elastyczne

Pozostało 580 znaków

2014-12-17 23:44
0

Okej, ustawiłem sobie trzy panele w zewnętrznym panelu. Zewnętrznemu panelowi ustawiłem Layout na "Card Layout" teraz cały panel się zmniejszył i nie mogę już zaznaczyć zewnętrznego tylko te w środku. Jak mogę teraz na chwilę zmienić layout znów na "Free Design" żeby dostać się znów do tych pod spodem?

Mówię o wysiwyg edytorze w NetBeans


char mander; bool basaur;
nie używaj edutora netbeans :D to moja rada :D:D:D - wojciechmaciejewski 2014-12-18 08:13
A uzasadnienie gdzie? :P Takie rady to można sobie wsadzić... :) Mi się sprawdzał to celów, do których został stworzony. - Olamagato 2014-12-18 18:58
wsadzić to se można takie komentarze :D To nie post,a komentarz, a tematów jak tworzyć GUI było już pewnie ze 20 w związku z tym nie chce mi się ich przytaczać :P - wojciechmaciejewski 2014-12-18 20:18

Pozostało 580 znaków

2014-12-18 19:02
0

Nie kombinuj, tylko wrzuć wszystkie panele ze stanem visible = false i zmieniaj ten stan tylko jednemu na raz. Temu który ma być wyświetlany. Ewentualnie możesz dodawać i usuwać do rodzica tylko ten jeden panel, który ma być pokazywany. I po problemie. A instancje paneli możesz sobie trzymać w dowolnych zmiennych lub jakimś kontenerze. Wystarczy je raz stworzyć. A potem wypełniać danymi zgodnie z aktualnym stanem.


Jeżeli ktoś komuś coś, ewentualnie nikt nikomu nic, to właściwie po co...?

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