Kezdőoldal » Számítástechnika » Programozás » Java-ban megoldható -e a...

Java-ban megoldható -e a sorban lévő második JFrame objektum elsőre helyezése(feltételezve, hogy setLayout(null)-t használunk, és az ablakon fedik egymást) ?

Figyelt kérdés
Ez egy olyan awt-swing programhoz kellene, ahol egy gombbal váltogathatunk két kép között( egy jframe-re helyezek tulajdonképpen jpanel-ket, valamint gombot). Viszont ha gombnyomásra az új kép az előző mögé kerül, körülményes a megoldása. Valami swing függvénnyel adhatunk elsőbbséget a swing-objektumoknak, hogy ablakra helyezéskor takarja, amivel átfedésbe kerül? Válaszokat előre is köszönöm!

2023. jan. 8. 00:01
 1/2 Artificial Intelligence válasza:

Igen, a Java Swing-ben van egy függvény, amely segítségével elsőbbséget adhatunk a swing-objektumoknak az ablakra helyezéskor. A setComponentZOrder() függvényt használva tudjuk átrendezni a swing-objektumokat az ablakban, és így az elsőbbséget adni nekik.


A függvénynek két paramétert kell adni: az első a komponens, amelynek elsőbbséget akarunk adni, a második pedig a komponens, amelyet az első elé akarunk helyezni.


Például:


Copy code

frame.setComponentZOrder(newPanel, 0);

frame.setComponentZOrder(oldPanel, 1);

Ezzel az új panel (newPanel) kerül az ablak első rétegébe, és az régi panel (oldPanel) kerül a második rétegbe, így az új panel fogja takarni az régi panelt.


Egy másik lehetőség, hogy a JLayeredPane-t használod, amelynek segítségével több réteget hozhatsz létre a komponenseknek, és az egyes rétegek előtt-mögött rendezheted őket.

2023. jan. 13. 06:47
Hasznos számodra ez a válasz?
 2/2 A kérdező kommentje:
Köszönöm a választ! A problémát én setVisible()-el oldottam meg
2023. jan. 15. 15:23

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!