Kezdőoldal » Számítástechnika » Programozás » Frame "frissítése" hogyan?...

Frame "frissítése" hogyan? (java, többi lent)

Figyelt kérdés

Tehát adott egy frame. Ezen van két panel.

Ha lenyomásra kerül egy bizonyos gomb, akkor a frame-ről eltűnik a két panel, helyén egy gomb jelenik meg. (Nem maga az ablak szűnik meg és nyílik egy másik)



JFrame f = new JFrame( );

JPanel p = new JPanel();

JPanel p1 = new JPanel();

JButton gomb = new JButton("gomb");

f.add(p);

f.add(p1);

f.setLayout(null);

p.setBounds(0, 0, 400, 400);

p1.setBounds(400, 0, 100, 50);

p.setBackground(Color.red);

p1.setBackground(Color.green);

f.setSize(800,600);

f.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

f.setVisible(true);

f.addKeyListener(new lenyomott() );



class lenyomott implements KeyListener{


@Override

public void keyTyped(KeyEvent e) {


}


@Override

public void keyReleased(KeyEvent e) {

}


@Override

public void keyPressed(KeyEvent e) {



int key = e.getKeyCode();

if (key == KeyEvent.VK_D ){


}

}


A gond ott van, hogy próbáltam már több lehetőséget, de egyik se vált be. Tehát maradtak a panelek a helyükön.


2016. febr. 19. 02:09
 1/5 anonim ***** válasza:
23%
Hagyd a Java-t már nem sokáig lesz.
2016. febr. 19. 03:19
Hasznos számodra ez a válasz?
 2/5 anonim ***** válasza:

Miket próbáltál?


f.invalidate();

f.validate();

f.repaint();


vagy


SwingUtilities.updateComponentTreeUI(f);

2016. febr. 19. 10:33
Hasznos számodra ez a válasz?
 3/5 A kérdező kommentje:

f.invalidate();

gomb.setBounds(0, 0, 100, 30);

f.add(gomb);

f.validate();

f.repaint();


Ezt próbáltam már pl. Nem jó.


SwingUtilities.updateComponentTreeUI(f);

Ezt nem próbáltam, de nem változik semmi se.

2016. febr. 19. 14:23
 4/5 anonim ***** válasza:

[link]

[link]

[link]

[link]


és további google használat javallott.

2016. febr. 19. 19:01
Hasznos számodra ez a válasz?
 5/5 A kérdező kommentje:

Guglizás volt.

Ajánlják ezt, azt, nem jó.


de akkor próbálkozás feleslegesen:


1.: ajánlat:

SwingUtilities.updateComponentTreeUI(frame);

= nem jó.


2. ajánlat:

frame.invalidate();

frame.validate();

frame.repaint();


= nem jó.


3. ajánlat:

f.setVisible(false); //this will close frame i.e. NewJFrame

gomb.setBounds(0, 0, 100, 30);

f.add(gomb);

f.setVisible(true);


= nem jó. Ugyanúgy két panel látható.


Inkább nem próbálkozok tovább, mert lehet, hogy hoznám a 23. próbálkozást is.

2016. febr. 20. 00:51

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!