mhh dzięki za rozbudowaną odpowiedź. Bo chodzi mi o taki przycisk "New Game". Czyli tak jakby całą aplikację odpalamy od nowa.
Przykładowo :
Main(okno Menu, tutaj mogło by być np wprowadzanie imion graczy itd )
import java.awt.Button;
public class Main {
private JFrame f;
public Main() {
prepare();
init();
}
private void init() {
JButton btnStart = new JButton("Start");
btnStart.setBounds(150, 159, 89, 23);
btnStart.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("new window");
new Game();
}
});
f.getContentPane().add(btnStart);
}
private void prepare() {
f = new JFrame();
f.getContentPane().setLayout(null);
f.setSize(400, 320);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setLocationRelativeTo(null);
f.setVisible(true);
}
public static void main(String[] args) {
new Main();
}
}
Game ( tutaj by toczyła się cała gra, i żeby uzytkownik miał mozliwosc jakby skasowania obecnej gry, i od nowa powrocic do Menu wprowadzic imiona itd itd, Za to odpowiedzialny byłby btn )
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Game {
private JFrame f;
public Game() {
f = new JFrame();
f.getContentPane().setLayout(null);
f.setSize(400, 320);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setLocationRelativeTo(null);
f.setVisible(true);
JButton x = new JButton();
x.setBounds(50, 50, 100, 50);
x.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
new Main();
}
});
f.add(x);
}
}
TYlko jeśli tworzę to w taki sposób, co prawda przechodzimy do MEnu z powrotem ale niestety zostają te stare okna :/