Menüben JPanel váltás

Címkék
Menüben JPanel váltás
2022-09-20T14:02:31+02:00
2022-09-21T09:02:40+02:00
2022-10-15T21:20:18+02:00
JoeyNT
Sziasztok!

Van egy Java-s alkalmazásom amiben minden menüpont egy külön JPanel class-ban van megcsinálva.
Mikor váltok egy menüelem között az  baj, hogy csak akkor tölti be az adott JPanel-t, ha még 1x rákattintok a menüre.

class PanelCsere_adatok implements ActionListener                      
 {
  public void actionPerformed(ActionEvent e)
   {
   Gyartasi_adatok adatok = new Gyartasi_adatok();                        //példányosítom az osztályt
   setContentPane(adatok);                                                              //megjelenítendő contetnpane beállítása
   }
 }

A menü gombhoz adtam figyelőt és a fenti kód cseréli ki a JPaneleket, hogy melyik legyen a contentpane.
Mit kellene csinálnom, hogy a menüelemre kattintva egyből betöltse a kért menüelemet és ne keljen még 1x a menmüre kattintani?
Mutasd a teljes hozzászólást!
A JPanel-eket JFrame-kre kell rápakolni, mivel a panel-eket rendezetten szokás megjeleníteni. Tehát az egyes menüpontok által meghívott osztálynak JFrame-nek kell lennie, amin rajta van a panel, azon pedig az űrlap komponensei. A menüpont aktiválása során fel kell építeni a teljes komponens hierarchiát, aminek az alapja egy JFrame, és ennek a JFrame-ből származtatott osztálynak már lesz egy setVisible metódusa, amely a megjelenítésért felel. Ezt kell utoljára meghívni, ekkor ez a frame lesz az aktív, és látható.
Nézd meg ezt a példát, amelyben a fenti hierarchia van implementálva. Neked is egy ilyet kell lérethozni a menüpont ActionListener-ben.
Mutasd a teljes hozzászólást!

Címkék
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd